On 20 Feb 2014, at 17:27, Mathias Bauer <[email protected]> wrote:
> The call to _Unwind_Resume_or_Rethrow(e) does not return. That's not a bad thing. _Unwind_Resume_or_Rethrow() is only supposed to return in error conditions. > I tested, that a simple @try/@catch works (an exception thrown in a function > called from the @try block is caught successfully and the program exits > normally). But throwing another exception in the function that caught the > exception freezes the program again. It doesn't matter if the second > exception is thrown inside the @catch block or outside of it. Hmm, do you know which exception ABI you're using? Can you make sure that you're compiling with -fobjc-runtime=gnustep-1.7 so that we're using the code that emits calls to the functions on entry to and exit from catch blocks? With the old ABI there may be some bugs related to exception lifetime (there are also bugs in that the old ABI is impossible to implement correctly). David _______________________________________________ Discuss-gnustep mailing list [email protected] https://lists.gnu.org/mailman/listinfo/discuss-gnustep
