Compiler Error C2936
Visual Studio 2015
The new home for Visual Studio documentation is Visual Studio 2017 Documentation on docs.microsoft.com.
The latest version of this topic can be found at Compiler Error C2936.
class' : type-class-id redefined as a global data variable
You cannot use a generic or template class as a global data variable.
This error can be caused if braces are improperly matched.
The following sample generates C2936:
// C2936.cpp
// compile with: /c
template<class T> struct TC { };
int TC<int>; // C2936
// OK
struct TC2 { };
int TC2;
C2936 can also occur when using generics:
// C2936b.cpp
// compile with: /clr /c
generic<class T>
ref struct GC {};
int GC<int>; // C2936
// OK
ref struct GC2 {};
int GC2;
Show: