blockaddress(@function, %block) IR?
Tove via digitalmars-d-ldc
digitalmars-d-ldc at puremagic.com
Mon Aug 18 08:45:53 PDT 2014
On Sunday, 17 August 2014 at 03:35:14 UTC, Tove wrote:
> I guess one possible conclusion from this is that ldc invokes
> llvm to translate the inlineIR totally isolated from the rest of
> the d-file and thus is unable to access any global symbols which
> are not parameters to the template?
>
> If it simply had concatenated the output generated by the
> inlineIR to the end of the output generated by the rest of the
> translation unit, then it would most likely have worked?
>
> Well, I'm just speculating, I should familiarize myself with the
> ldc source one sunny day.
After cloning the source, I found the issue using code-review,
the regression was introduced in:
7436d94e09700fc3ead5fc3b1912d172c299dfaa
Since I'm not able to build LDC at the moment, I downloaded a
binary ldc-dist before this patch was introduced and indeed it is
able to compile my blockaddress example, but instead there's a
linking error, the inline function is missing, it's not as simple
as reverting this patch.
Looking at the "-output-ll" I see that the inlineIR function is
"declared" but not defined.
More information about the digitalmars-d-ldc
mailing list