Building GDC with auto-generated header files

Eduard Staniloiu edi33416 at gmail.com
Mon Jul 29 16:11:52 UTC 2019


Cheers, everybody

I'm working on this as part of my GSoC project [0].

I'm working on building gdc with the auto-generated `frontend.h` 
[1], but I'm having some issues

There are functions in dmd that don't have an `extern (C)` or 
`extern (C++)` but they are used by gdc (are exposed in `.h` 
files)

An example of such a function is `checkNonAssignmentArrayOp`[2] 
from `dmd/arrayop.d` which is can be found in 
`gcc/d/dmd/expression.h` [3]

How does the linker find the right match in dmd? Since the 
function is `extern (D)`, isn't it mangled differently than C++?

[0] - 
https://forum.dlang.org/thread/djurwumzfrrttvtdgajs@forum.dlang.org
[1] - https://github.com/dlang/dmd/pull/9971
[2] - 
https://github.com/dlang/dmd/blob/master/src/dmd/arrayop.d#L85
[3] - 
https://github.com/gcc-mirror/gcc/blob/master/gcc/d/dmd/expression.h#L84


More information about the Digitalmars-d-learn mailing list