Help with DMD internals

Walter Bright newshound2 at digitalmars.com
Sun May 20 20:25:22 UTC 2018


On 5/20/2018 12:28 PM, Manu wrote:
> I've started digging at some surfac-ey extern(C++) issues.

I've improved the definition of how construction works, such as when the .init 
happens, in the spec.

https://dlang.org/spec/class.html#constructors

 > Is __xdtor **always** present?

No. If it's POD, it is not. When it is added, it is added as an 
AliasDeclaration, not a FuncDeclaration. See buildDtor() in clone.d, which is 
where it is created.

You can also see in that function how _ArrayDtor and __fieldDtor are built on 
demand, and the order in which they are called.


More information about the Digitalmars-d mailing list