Cpp/D interface semantic

Johan Engelen via Digitalmars-d digitalmars-d at puremagic.com
Sun Jun 26 02:28:19 PDT 2016


On Sunday, 26 June 2016 at 07:51:16 UTC, Guillaume Chatelet wrote:
>
> This is fine in the case where E is a D interface because of 
> reference semantics: it should be passed by pointer.
>
> But, in the case where an extern(C++) function calls an 
> extern(C++) type should it be value semantic - as it is in C++ 
> - or reference semantic - as it is in D?

I think the semantics should be D, so e.g. reference semantics 
for an extern(C++) class.
(This is all over ddmd source: many front-end classes are 
extern(C++)).

A related PR:
https://github.com/dlang/dmd/pull/5875



More information about the Digitalmars-d mailing list