On Friday, May 15, 2015 21:31:35 Manfred Nowak via Digitalmars-d-learn wrote:
> The following gives:
> "Error: 'a += b' is not a scalar, it is a C"
> although UFCS should engage.
>
> -manfred
>
> class C{}
> int main(){
>   void opOpAssign( string op)( C a, C b){
>   }
>   C a, b;
>   a+= b;
> }

Overloaded operators have to be defined as part of the type that they're
overloading the operator for, and UFCS is only ever used with the . syntax.
So, this isn't a bug.

- Jonathan M Davis

  • UFCS Manfred Nowak via Digitalmars-d-learn
    • Re: UFCS Timon Gehr via Digitalmars-d-learn
    • Re: UFCS Jonathan M Davis via Digitalmars-d-learn
    • Re: UFCS Manfred Nowak via Digitalmars-d-learn
    • Re: UFCS via Digitalmars-d-learn

Reply via email to