Andre Poenitz wrote: >> class tull; >> std::pair<tull, tull> ReturnVar(); > > This is illegal IMHO even if g++ and Comeau (*gosh*) accept it. > [Have we had this discussion before?]
Don't think so. Show me where it says that the template must be instantiated in a forward declaration. Even code like this is perfectly Ok (AFAICS). Compiles on g++ and HP cxx: --------- bar.h --------- #include <vector> class foo; struct bar { std::vector<foo> bazz; }; -------- trial.C -------- #include "bar.h" class foo {}; int main() { bar b; return 0; } Why not ask the experts? -- Angus