toHash => pure, nothrow, const, @safe

Andrei Alexandrescu SeeWebsiteForEmail at erdani.org
Tue Mar 13 07:46:54 PDT 2012


On 3/13/12 6:02 AM, Peter Alexander wrote:
> On Monday, 12 March 2012 at 09:40:15 UTC, Walter Bright wrote:
>> On 3/12/2012 1:08 AM, Martin Nowak wrote:
>>> What's wrong with auto-inference. Inferred attributes are only
>>> strengthening
>>> guarantees.
>>
>> Auto-inference is currently done for lambdas and template functions -
>> why? - because the function's implementation is guaranteed to be
>> visible to the compiler. For other functions, not so, and so the
>> attributes must be part of the function signature.
>
> Dumb question:
>
> Why not auto-infer when the function body is available, and put the
> inferred attributes into the automatically generated .di file?
>
> Apologies if I've missed something completely obvious.

Because in the general case functions call one another so there's no way 
to figure which to look at first.

Andrei


More information about the Digitalmars-d mailing list