This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: catch(...) and forced unwind


On Mon, Dec 15, 2003 at 04:39:06PM -0600, Benjamin Kosnik wrote:
> 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?

The only thing that would work is

  void __rethrow_cancellation() { }

and then do something like

  if (get_cancelation_handler() == __rethrow_cancellation)
    _Unwind_Resume (current_exception);

in __cxa_end_catch.  Which seems kinda gross to me.

Keep in mind that __cancel_cancellation WILL NOT WORK without help from
and buy-in from the pthread library.  Which does not currently exist.


r~


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]