how to resolve "matches more than one template declaration"?

Juanjo Alvarez via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Fri Jun 20 13:40:49 PDT 2014


Hi,

Newbie question:

void foo(S)(S oneparam){}
void foo(S)(S oneparam, int anotherParam){}
alias fooStr = foo!string;

Gives:

"Error: template test.foo matches more than one template 
declaration:"

How could I fix it so the alias aliases one of the two versions? 
Also, why can't "fooStr" be an alias for both templates? 
Considering than the generic parameter is not what changes 
between both, I tough I could do fooStr(somestring) or 
fooStr(somestring, someint) with this alias.


More information about the Digitalmars-d-learn mailing list