Quote Originally Posted by D_Drmmr View Post
Moving the definition below main also prevents the error, though that's probably not a very practical workaround.
yes, it seems also working whenever an instantion occurs before the compiler find the function definition, but again not that useful ...

Quote Originally Posted by Codeplug View Post
>> for now, I'll stick with putting the function body definition along with its declaration
That seems to be the most practical work-around.
agreed, I can also forward arguments to an "implementation" function defined elsewhere if needed ...

BTW, I'm quite disappointed by the current VC template support, I have to say. For example, I thought they would have fixed SFINAE support in this release, whilst we're still forced to use workarounds like boost::lazy_enable_if in some cases ...