__cxa_exception vs __cxa_call_unexpected

Richard Henderson rth at redhat.com
Wed May 9 05:49:57 UTC 2001


The c++ exception structure contains 

  int handlerSwitchValue;
  const unsigned char *actionRecord;
  const unsigned char *languageSpecificData;
  void *catchTemp;

for use in communicating between the personality routine and
__cxa_call_unexpected.  In order to be able to interpret the
LSDA, one needs a copy of the associated GP.  I don't see any
place that this value may be cached.  The _Unwind_Context was
local to _Unwind_RaiseException, and so was destroyed when we
transfered control to the handler.

What are other folks doing?


r~




More information about the cxx-abi-dev mailing list