I am not sure if it is a Microsoft specific extension.The following code compiles correctly using the latest C/C++ compiler (2005) from Microsoft.
namespace C { enum T { A, B, C, }; } int a = C::T::A; When I compile it using MinGW, gcc produces: main.cxx:163: error: `C::T' is not a class or namespace main.cxx:163: error: expected primary-expression before ';' token