Compiler Error C3299
'member_function' : cannot specify constraints, they are inherited from the base method
When overriding a generic member function, you cannot specify constraint clauses (repeating the constraints implies that the constraints are not inherited).
The constraint clauses on the generic function you are overriding will be inherited.
For more information, see Constraints on Generic Type Parameters (C++/CLI).
Example
The following sample generates C3299.
// C3299.cpp
// compile with: /clr /c
public ref struct R {
generic<class T>
where T : R
virtual void f();
};
public ref struct S : R {
generic<class T>
where T : R // C3299
virtual void f() override;
};