Argument S to typeof is not an expression
Meta
jared771 at gmail.com
Wed May 8 18:08:27 PDT 2013
I tried defining opAdd for S as following:
auto opAdd(alias rhs)()
if (is(typeof(rhs) == S))
{
return Test!(n + rhs.n);
}
Which I know is kind of silly, since I can't use opAdd to do a +
b anymore, but it fails to compile anyway. The compiler says that
b (of type Test) does not match a's version of opAdd, which
doesn't seem right to me.
Removing the template constraint doesn't help either, as I run
into "local variable argument to non-global template" bug, and I
can't get the structs to be evaluated at compile time, so I guess
that's a lost cause.
More information about the Digitalmars-d-learn
mailing list