On 6/2/17 7:55 AM, Arafel wrote:
But, in the real world if I've got a (web)server that has proper
isolation, I'd much rather have a server that sends back a 500 [error
message] for the buggy page and keeps working otherwise, than one that
is killed and has to be restarted every time a buggy page is asked.

Yes, exactly what I want.

Perhaps an intermediate solution would be to offer a compiler switch
that allows Errors to be safely caught (that is, they behave as
exceptions). As far as I understand from reading this thread, that's
already the case in debug builds, so it cannot be that bad practice, but
it would be nice to have a mode that it's otherwise "release", only with
this feature turned on.

I don't think this is workable, simply because of nothrow. An Error is allowed to be thrown in nothrow code, and the compiler can simultaneously assume that nothrow functions won't throw. Therefore it can legally omit the scaffolding for deallocating scope variables when an Exception is thrown (for performance reasons), and leave your program in an invalid state.

The only conclusion I can come to is that I need to write my own array types. This isn't going to be so bad as I thought, and likely will just become second nature to use them.

-Steve

Reply via email to