[except.uncaught] (original) (raw)

An exception is considered uncaught after completing the initialization of the exception objectuntil completing the activation of a handler for the exception ([except.handle]).

[Note 1:

As a consequence, an exception is considered uncaught during any stack unwinding resulting from it being thrown.

— _end note_]

If an exception is rethrown ([expr.throw], [propagation]), it is considered uncaught from the point of rethrow until the rethrown exception is caught.

The function std​::​uncaught_­exceptions ([uncaught.exceptions]) returns the number of uncaught exceptions in the current thread.