On Wednesday, 15 October 2014 at 03:18:31 UTC, Walter Bright wrote:

However, the compiler is still going to regard the assert() as nothrow, so the unwinding from an Exception won't happen until up stack a throwing function is encountered.

I hate to say it, but I'm inclined to treat nothrow the same as in C++, which is to basically pretend it's not a part of the language. The efficiency is nice, but not if it means that throwing an Error will cause the program to be invalid. Please tell me there's no plan to change the unwinding behavior when Error is thrown in standard (ie not nothrow) code.

I touched on all this in my "on errors" thread that seems to have died. I suppose I could write a DIP but I was hoping for discussion.

Reply via email to