Template conflict with Function

Kirk McDonald kirklin.mcdonald at gmail.com
Wed Feb 13 02:40:33 PST 2008


Matthias Walter wrote:
> Hello,
> 
> I've got another question regarding templates. I have the following functions:
> 
> int foo (int i)
> {
> 
> }
> 
> int foo (T, U) (inout Expression !(T, U) expr)
> {
> 
> }
> 
> The compiler stops with error: "template Test.foo(T,U) conflicts with function Test.foo at Test.d(191)".
> 
> I'd like to call them in the following way:
> 
> foo (10);
> Expression !(long, int) x;
> foo (x);
> 
> I also cannot put them into one function template, because the parameter storage class es differ.
> 
> best regards
> Matthias Walter

Re-write the first one as:

int foo()(int i) {
}

That is, make it another, second function template, with no template 
parameters.

-- 
Kirk McDonald
http://kirkmcdonald.blogspot.com
Pyd: Connecting D and Python
http://pyd.dsource.org


More information about the Digitalmars-d-learn mailing list