digitalmars.D.learn - Template conflict with Function
- Matthias Walter <walter mail.math.uni-magdeburg.de> Feb 13 2008
- Kirk McDonald <kirklin.mcdonald gmail.com> Feb 13 2008
- bearophile <bearophileHUGS lycos.com> Feb 13 2008
- Bill Baxter <dnewsgroup billbaxter.com> Feb 13 2008
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
Feb 13 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
Feb 13 2008
Kirk McDonald:int foo()(int i) { } That is, make it another, second function template, with no template parameters.
If not already present, I think this little trick deserves to go into the D docs :-) Bye, bearophile
Feb 13 2008
bearophile wrote:Kirk McDonald:int foo()(int i) { } That is, make it another, second function template, with no template parameters.
If not already present, I think this little trick deserves to go into the D docs :-)
Until then there's always the Comments wiki page. --bb
Feb 13 2008








Bill Baxter <dnewsgroup billbaxter.com>