an 'invalid structure name' cannot not be a template
You attempted to make a class template out of an interface or an enum. For example, given,
template<typename T> __interface IMyInterface { };
Will generate C3113 because you cannot templatize an interface.