   fatal error - compiler error
  Try and compile this on VC++ 6.This is the essence of some code I was writing, and I had forgotten to add the template to the inheritance part of inheriting from class A.Being a good little boy, I had everything properly encapsulated within namespaces.namespace hello{template <class T>class A{public:int a;};}// namespace helloclass B:public hello::A{public:int b;};int main(){return 0;}Answer me this: why is it that if I get rid of the namespace I get a nice "class A is a template class!" error message, but if I put the namespaces in I get:--------------------Configuration: test code - Win32 Debug--------------------Compiling...test code.cppC:\Documents and Settings\Naim\My Documents\Programming\everything\test code\test code.cpp(25) : fatal error C1001: INTERNAL COMPILER ERROR   (compiler file 'msc1.cpp', line 1786)Please choose the Technical Support command on the Visual C++Help menu, or open the Technical Support help file for more informationError executing cl.exe.test code.exe - 1 error(s), 0 warning(s)That?Why does the namespace cause such an error? Is it simply because VC++ 6 is really really broken?   
  The code above should return error error C2955: 'hello::A' : use of class template requires template argument list. I'll try this in VS 2003.[Edit]: In VS 2003 I've got no INTERNAL COMPILER ERROR.   ;  It's really strange. I only get the internal compiler error if I have the namespaces in. Take them out, perfectly legit "'A' : use of class template requires template argument list"Isn't that just strange?   ;  It is not. That's why you've got VS 2003 and now VS 2005 published. I've crushed with some stranger behaviors of VS6: In the same Debug build, the program behaves differently when I run it from Visual Studio environment and when I run it from outside (by command line or Windows Explorer) with the same set of input.   ;  There are like a billion ways to make VC++ 6 ICE. Fortunately MS has fixed that situation in '03 and '05.   ;  So this is basically just another demonstration of VC++ 6 being really really broken.   ;Quote:Original post by EndarSo this is basically just another demonstration of VC++ 6 being really really broken.exactly.   