xxxxxxxxxx
T foo(T)(T x)
{
static assert(is(T == int));
return x + 1;
}
T foo(T)(T x)
{
static assert(is(T == float));
return x + 1;
}
T bar(T)(T x) if(is(T == int))
{
return x + 1;
}
T bar(T)(T x) if(is(T == float))
{
return x + 1;
}
void main()
{
float x = 1.0;
//auto y = foo(x);
auto z = bar(x);
}