E2392 Template instance 'template' is already instantiated (C++)

From RAD Studio
Jump to: navigation, search

Go Up to Compiler Errors And Warnings (C++) Index

There are two ways to trigger this error. If -A is enabled (ANSI compliant mode), then attempting to explicitly instantiate a template specialization which has already been instantiated (either implicitly or explicitly) will cause this error. Regardless of -A, attempting to explicitly specialize a template specialization which has already been either implicit or explicitly instantiated will always trigger this error. For example:

template<class T>
class foo;
foo<char> x;     // causes implicit instantiation of "foo<char>"
template<>
class foo<char> { };   // error: "foo<char>" already instantiated
template class foo<char>;   // error in -A mode, otherwise a warning