This rightfully doesn't compile:
class A {
A opAssign(A a); // Error: function test.A.opAssign identity
assignment operator overload is illegal
}
But when instead of A you assign const(A), shared(A) or
any_type_constructor(A) it compiles. Is this intended?
Tomek