<p dir="ltr">On 12 Nov 2015 7:15 am, "Walter Bright via Digitalmars-d" <<a href="mailto:digitalmars-d@puremagic.com">digitalmars-d@puremagic.com</a>> wrote:<br>
><br>
> On 11/11/2015 4:16 PM, Iain Buclaw via Digitalmars-d wrote:<br>
>><br>
>> The main problem for seamless support is having some way to generate the C++<br>
>> typeinfo in D to allow work across boundaries.<br>
><br>
><br>
> I suspect that is unnecessary.<br>
><br>
> The whole point of D's C++ interface is to interface with C++ code. Defining C++ classes in D code that does not link to any C++ code that also defines those classes won't be supported. I.e. we can reply on the C++ code generating the necessary C++ typeinfo. The generated D code only has to link to it, i.e. generate an extern reference to the name of the typeinfo.<br>
></p>
<p dir="ltr">It is a small concern to me that C++ catch handlers work by calling some support library code, If I recall correctly both at the start and end of the handler. These calls may change the state of C++'s language specific unwind library, such as adjust any reference counters, mark the thrown object as having been caught.</p>
<p dir="ltr">Maybe less of a concern now than last year. But I do wonder what effect it will incur on a long running program.</p>
<p dir="ltr">--<br>
Regards, <br>
Iain </p>