[dmd-internals] How does TypeInfo.init work?

Mike Franklin via dmd-internals dmd-internals at puremagic.com
Thu Jun 11 05:02:15 PDT 2015


There is a comment [1] in object.d for TypeInfo.init reading:

"Return default initializer.  If the type should be initialized to all zeros, an array with a null ptr and a length equal to the type size will be returned."

Also, I see where the null pointer is set in typinf.c [2].  


Using int as an example, how does the compiler go from a null pointer and a size to a 32-bit 0?  Where is that done in the compiler?


[1] https://github.com/D-Programming-Language/druntime/blob/master/src/object.d#L286-L287
[2] https://github.com/D-Programming-Language/dmd/blob/master/src/typinf.c#L460

 
Thanks for the help,
Mike


More information about the dmd-internals mailing list