On Fri, Feb 11, 2005 at 11:37:52PM +0100, Karel Gardas wrote: > On Fri, 11 Feb 2005, Karel Gardas wrote: > > > On Fri, 11 Feb 2005, Jan Reimers wrote: > > > > > Can someone verify that this is valid C++ before I submit a bug report: > > > > > > // test.C > > > template <class T> class A {static T* c;}; > > > > > > class B : public A<B> {}; > > > > > > B* A<B>::c=0; > > > // end test.C > > > > > > > At least Comeau C++ 4.3.3 and Intel C++ 8.0 compile it and to me it also > > looks ok, but I'm not at all C++ language lawer! > > Thanks to Joe Buck's note, I've found that I've compiled the code with > default, i.e. not so ANSI C++ strict options. I can just confirm that both > Comeau and Intel also fail to compile the code above with proper more > strict options (-A for como, -ansi for icpc).
I wouldn't mind at all if gcc had a clearer error message, though, even to the point of suggesting "template <>".