- 
    Sub-task 
- 
    Resolution: Done
- 
    P2: Important 
- 
    None
- 
    None
I create next code:
//=====================================================
enum ErrorCode {
   OK
};
template<ErrorCode code>
struct ErrorText {};
struct Text<OK> {};
//=====================================================
Each line contains Text<OK> highlighted with message: "`OK' is not a type name". But syntax is fully valid and compiles fine by gcc-4.