This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: catch(...) and forced unwind
- From: Benjamin Kosnik <bkoz at redhat dot com>
- To: Richard Henderson <rth at redhat dot com>
- Cc: jason at redhat dot com, gcc at gcc dot gnu dot org, mark at codesourcery dot com, drepper at redhat dot com, jakub at redhat dot com, ncm at cantrip dot org, dave at boost-consulting dot com, wekempf at cox dot net, fjh at cs dot mu dot oz dot au
- Date: Mon, 15 Dec 2003 16:39:06 -0600
- Subject: Re: catch(...) and forced unwind
- Organization: Red Hat / Chicago
- References: <xypwu91ofvf.fsf@miranda.boston.redhat.com><20031212183754.13f4864b.bkoz@redhat.com><20031215222143.GL25423@redhat.com>
>This one doesn't work, for the reason that Jason gave earlier:
>we've already committed to deleting the exception. If we want
>to rethrow, then we have to hook into __cxa_end_catch.
Ok. So, just to clarify:
void __rethrow_cancellation()
{
// something else
}
might be valid (given sufficient smarts, not given at the moment), or
the whole idea is shot? Keep in mind that the __cancellation_handler is
set once, so it could be used to set the __cxa_end_catch personality to
something that rethrows.
-benjamin