Compiler Error C3297
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 C3297.
constraint_2' : cannot use 'constraint_1' as a constraint because 'constraint_1' has the value constraint
Value classes are sealed. If a constraint is a value class, another constraint can never derive from it.
For more information, see Constraints on Generic Type Parameters (C++/CLI).
The following sample generates C3297.
// C3297.cpp
// compile with: /clr /c
generic<class T, class U>
where T : value class
where U : T // C3297
public ref struct R {};
Show: