Versioned std.exception.bailOut()?

bearophile bearophileHUGS at lycos.com
Fri Jun 15 10:31:58 PDT 2012


Jonathan M Davis:

> It's the fact that enforce is lazy which prevents inlining 
> (which really does
> need to be fixed or enforce is going to continue to be a 
> performance problem).

Then my "solution" solves nothing. Thank you Jonathan.


> However, this suggestion is clearly bad, because it's 
> suggesting turning an
> exception into an assertion, which is _very_ broken thing to 
> do. Assertions
> and exceptions are two _very_ different things and should be 
> treated as such.

enforce() sometimes is used as an assert you can't disable (as in 
Nullable.get, I think). So maybe such cases are better handled 
introducing two levels of asserts, "light asserts" and "strong 
asserts".

Bye,
bearophile


More information about the Digitalmars-d mailing list