Compiler Error C2991
redefinition of type parameter 'parameter'
There was a type conflict between two generic or template definitions of parameter
. When defining multiple generic or template parameters, you must use equivalent types.
The following sample generates C2991:
// C2991.cpp
// compile with: /c
template<class T, class T> struct TC {}; // C2991
// try the following line instead
// template<class T, class T2> struct TC {};
C2991 can also occur when using generics:
// C2991b.cpp
// compile with: /clr /c
generic<class T,class T> ref struct GC {}; // C2991
// try the following line instead
// generic<class T,class T2> ref struct GC {};