A function template can have the same name as other function templates
and non-template functions ([dcl.fct]) in the same scope.
— end note]
A non-template function is not
related to a function template
(i.e., it is never considered to be a specialization),
even if it has the same name and type
as a potentially generated function template specialization.123
That is,
declarations of non-template functions do not merely guide
overload resolution of
function template specializations
with the same name.
If such a non-template function is odr-used ([basic.def.odr]) in a program, it must be defined;
it will not be implicitly instantiated using the function template definition.