t.cpp: In static member function 'static void AssertSameOrDerivedFrom<Test, Base>::constraints() [with Test = NotDerived, Base = Base]':
t.cpp:4: instantiated from 'AssertSameOrDerivedFrom<Test, Base>::AssertSameOrDerivedFrom() [with Test = NotDerived, Base = Base]'
t.cpp:17: instantiated from 'YourClass<T>::YourClass() [with T = NotDerived]'
t.cpp:27: instantiated from here
Line 7: error: cannot convert 'NotDerived*' to 'Base*' in initialization
compilation terminated due to -Wfatal-errors.