Use C++ exception model in D
deadalnix
deadalnix at gmail.com
Wed Apr 9 23:53:18 PDT 2014
On Wednesday, 9 April 2014 at 17:27:56 UTC, David Nadlinger wrote:
> On Wednesday, 9 April 2014 at 16:48:54 UTC, Jacob Carlborg
> wrote:
>> x86_64 yes, not necessarily only for DMD. I thought if DMD,
>> LDC and GDC all used the same exception handling model and the
>> same as C++ it would be easier. Especially for implementing
>> support for Objective-C exceptions, which is why initially
>> started this thread.
>
> They don't. GDC and LDC use libunwind, whereas DMD uses its own
> custom EH implementation.
>
> With GDC and LDC, you'd just need to add your code to handle
> Objective-C exceptions to the personality functions. libunwind
> exceptions have a "type"/"source language" field, and by
> default most implementations either ignore unknown exception
> types or abort on encountering them.
>
> David
The C++ personality function from GCC does not catch, but do the
cleanup on foreign exceptions. That sound like the right behavior
to me.
More information about the Digitalmars-d
mailing list