BTW, raising an NSException inside a C++  

try{} 
catch(...){}  

block also seems to work OK. It does get caught.

Casey McDermott

--------------------------------------------
On Sat, 6/16/18, Alastair Houghton <alast...@alastairs-place.net> wrote:

 Subject: Re: Exception handling
 To: "Jens Alfke" <j...@mooseyard.com>
 Cc: "Quincey Morris" <quinceymor...@rivergatesoftware.com>, "Casey McDermott" 
<supp...@turtlesoft.com>, "cocoa-dev list" <cocoa-dev@lists.apple.com>
 Date: Saturday, June 16, 2018, 10:25 AM
 
 On 15 Jun 2018, at 19:30, Jens
 Alfke <j...@mooseyard.com>
 wrote:
 > 
 >> On Jun 14, 2018,
 at 5:58 PM, Quincey Morris <quinceymor...@rivergatesoftware.com>
 wrote:
 >> 
 >> as
 someone already mentioned, NSExceptions can’t successfully
 cross dylib/framework boundaries.
 > 
 > They can, actually; there is no problem
 with this at the ABI/runtime level.
 > 
 > I think what you mean is that most
 libraries/frameworks don't make guarantees about
 properly handling exceptions thrown into them, i.e. from a
 call into external code. Some C++ libraries do guarantee
 this (especially libc++), and even without guarantees a
 typical C++ lib using RAII will be relatively safe, but
 Objective-C code usually isn't written to be
 exception-safe, and C code of course can't be.
 
 Quite, though in principle
 there’s no reason C code couldn’t be exception safe,
 it’s just that there’s no language support for it
 (except on Windows where there are extensions to support
 SEH), so the C code would have to know about the relevant
 runtime data structures and associated behaviour.  In
 practice, it’s very unlikely you’d ever find
 exception-safe C code, except in a language runtime or -
 rarely - on Windows when it’s been written to use SEH.
 
 Kind regards,
 
 Alastair.
 
 --
 http://alastairs-place.net
 
_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to