Forced unwinding is like a foreign exception, which can be caught by catch (...) and rethrown.
If not rethrown, __cxa_end_cath will call _Unwind_DeleteException to destroy the object.
The behavior going through empty throw() and non-empty throw(int) is not
clear (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98785), so I do not add such
tests.