Program logic bugs vs input/environmental errors

Sean Kelly via Digitalmars-d digitalmars-d at puremagic.com
Wed Oct 15 18:54:37 PDT 2014


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.


More information about the Digitalmars-d mailing list