On Thursday, 18 October 2012 at 22:07:55 UTC, Timon Gehr wrote:
On 10/18/2012 11:45 PM, bearophile wrote:
There are other cases. Generally the D compiler should add some warnings that help against operator overloading mistakes.

I don't think that operator overloading gives rise to distinct mistakes. For example, better error messages that just specify the expected name, as in other cases of undefined identifiers, would already fix this.

Inside a function a badly named identifier becomes obvious since it outright tells you. But with regards to opOpAssign and other operator overloading I see the error message and I see the call but I don't see why it fails. Then I'll try adjusting the signature on my function, not realizing it never sees it in the first place due to misspelling.

Maybe.. A general warning when something starts with 'op(Op)?[A-Z]' but doesn't actually qualify as any of the override-able operators? That seems sensible...

Reply via email to