Issue ID: 16885
Summary: Cannot deduce function from argument type when mixing
template instantiation and implicit convertion
Sorry for the very generic title, didn't knew how to put it.
This snippet should compile:
T tail (T) (T v, in T i, out T o)
void main ()
const(char) p1, p2;
tail(p1, pi, p2);
As there is one possible instantiation for tail, which is `T=const(char)`.
But here the compiler fails to see it and spit out:
lol.d(11): Error: template lol.tail cannot deduce function from argument types
!()(const(char), string, const(char)), candidates are:
lol.d(1): lol.tail(T)(T v, in T i, out T o)