On 20/12/15 13:14, David Chisnall wrote: > The differences between ARM and not-ARM should be largely encapsulated in the > unwind-*.h headers.
Yes, this is what I already found. > The Objective-C++ exception handling part is here: > > https://github.com/gnustep/libobjc2/blob/master/eh_personality.c#L491 > > It actually looks as if it ought to work on ARM, so you can try removing the > #ifndef on #490 and see if it does. Basically, when we’re in an > Objective-C++ catch block, we’re going to catch either a C++ or Objective-C > exception. If an Objective-C exception was thrown, then we allocate a new > C++ exception and pass that off to the C++ personality function. If we’ve > been thrown a C++ exception, then we just pass it through. Thanks for explanation, this is exactly what was unclear for me - how to properly handle both Objective-C and C++ exceptions in __gnustep_objcxx_personality_v0. The way to wrap Objective-C exception into C++ one makes sense and looks simple to implement. I'll try to move with it and will get back with results in a few days. -- Dmitry Moskalchuk
signature.asc
Description: OpenPGP digital signature
_______________________________________________ Gnustep-dev mailing list [email protected] https://lists.gnu.org/mailman/listinfo/gnustep-dev
