Andrei Alexandrescu Wrote:
> On 9/3/10 16:03 CDT, bearophile wrote:
> > JMRyan:
> >> Is this a bug in the compiler (v.2.047)? Am I missing something in
> >> thinking it shouldn't be?
> >
> > I think it's not a bug. It's not a common need, but a method may way want
> > to swap this with another. In Phobos this is done on a struct, see:
> > http://www.dsource.org/projects/phobos/browser/trunk/phobos/std/stdio.d#L324
> >
> > Bye,
> > bearophile
>
> For classes this must be an rvalue.
>
> Andrei
Should this work?
class C
{
int x;
void opAssign(int n) {x = n;}
void foo(int n) {this = n;}
}
I agree this should not be rebindable. But it has to be an lvalue.
-Steve