Object.opEquals, opCmp, toHash

Paul D. Anderson paul.d.removethis.anderson at comcast.andthis.net
Thu Feb 16 09:46:20 PST 2012

On Thursday, 16 February 2012 at 08:35:20 UTC, Walter Bright 
> These all need to be:
>    const pure nothrow @safe
> Unless this is done, the utility of const, pure, nothrow and 
> @safe is rather crippled.
> Any reason why they shouldn't be?
> One reason is memoization, aka lazy initialization, aka logical 
> const. I don't believe these are worth it. If you must do it 
> inside those functions (and functions that override them), 
> you're on your own to make it work right (use unsafe casts, 
> etc.).


More information about the Digitalmars-d mailing list