gnustep-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: undefined reference to __gnustep_objcxx_personality_v0


From: David Chisnall
Subject: Re: undefined reference to __gnustep_objcxx_personality_v0
Date: Tue, 22 Dec 2015 08:17:26 +0000

On 20 Dec 2015, at 11:39, Dmitry Moskalchuk <address@hidden> wrote:
> 
> 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.

Ah, looking over the C++ unwinder code (which I wrote about 5 years ago, so 
don’t remember too well), I now see why it’s different on ARM:

https://github.com/pathscale/libcxxrt/blob/master/src/cxxabi.h#L113

You’ll need to copy those fields in here:

https://github.com/gnustep/libobjc2/blob/master/objcxx_eh.cc#L80

That should prevent objc_init_cxx_exception from overwriting the wrong fields 
on ARM.  I think that there are some tests in the test suite (the ‘test’ build 
target if you haven’t disabled building tests) that will indicate if it’s 
actually working.

David




-- Sent from my Apple II




reply via email to

[Prev in Thread] Current Thread [Next in Thread]