toHash => pure, nothrow, const, @safe

Martin Nowak dawg at dawgfoto.de
Mon Mar 12 13:56:19 PDT 2012


> Because that requires having all of the source code. The fact that we  
> have .di
> files prevents that.
It doesn't require all source code.
It just means that without source code nothing can be inferred and the
attributes fall back to what has been annotated by hand.
It could be used to annotated functions at the API level and have
the compiler check that transitively.
It should behave like implicit conversion to "pure nothrow ..." if the
compiler hasn't found them inapplicable.

On the downside it has some implications for the compilation model
because functions would need to be analyzed transitively.
But then again we already do this for CTFE.


More information about the Digitalmars-d mailing list