On 7/23/2014 2:36 PM, Andrei Alexandrescu via Digitalmars-d wrote:
On 7/23/14, 12:04 PM, H. S. Teoh via Digitalmars-d wrote:
If autogenerating opEquals to be opCmp()==0 is a no-go, then I'd much
rather say it should be a compile error if the user defines opCmp but
not opEquals.

No. There is this notion of partial ordering that makes objects not smaller and not greater than others, yet not equal. -- Andrei

Right, but in that case just define both. It's not the dominant case so shouldn't define the default behavior. Or if you truly have a case of comparable but no possibility of equal, just @disable opEqual (or define and throw, or assert, or...).

Reply via email to