Re: Problem with noexcept and incomplete backtrace

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 01/08/2013 10:53 PM, Jonathan Wakely wrote:
On 8 January 2013 21:48, Jonathan Wakely wrote:
Tobias, please report it to bugzilla. The standard places no
requirements on what happens except that std::terminate is called but
even if it's not a bug there is room for improvement.

I was a bit hasty, the standard does place some requirements:

In the situation where the search for a handler (15.3) encounters the
outermost block of a function with a
noexcept-specification that does not allow the exception (15.4), it is
implementation-defined whether the
stack is unwound, unwound partially, or not unwound at all before
std::terminate() is called. In all other

That only tells us that GCC's noexcept handling is standard compliant. It does not say that it's the least useful. :)

G++ appears to partially unwind the stack, although that isn't
documented at http://gcc.gnu.org/onlinedocs/gcc/Exception-handling.html

That text is probably older than noexcept, and GCC actually does follow what's writted there when noexcept isn't used. If only the noexcept case could be handled in the same way as the normal unhandled-exception-past-main case, all would be fine.

I'll create a Bugzilla report.

Thanks for your input!

/Tobias



[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux