'identifier': explicit instantiation of template function requires return type
An explicit instantiation of a function template requires explicit specification of its return type. Implicit return type specification does not work.
Example
template<class T> int f(T); template f<int>(int); // error template int f<int>(int); // OK