www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - Regression 19701 - LLD fails to link

reply Andre Pany <andre s-e-a-p.de> writes:
Hi,

could someone look at this regression, started with ~ 2.084
https://issues.dlang.org/show_bug.cgi?id=19701

LLD fails to link, in case you use dflags -Xfdocs.json
Kinke was kind and already analyzed the cause.

 The object files differ. With `-Df`, there's an external 
 reference to
 _D6object__T6hashOfTxaZQlFNaNbNiNfKxaZm, while it's
 _D4core8internal4hash__T6hashOfTaZQkFNaNbNiNexaZm without that 
 switch.
 
 Looking at object.d, that's because -Df defines 
 `version=D_Ddoc`, so that object.hashOf isn't an alias, but a 
 wrapper: 
 https://github.com/dlang/druntime/blob/58dcda229e0658451325b70243fb5cb67c6cda46/src/object.d#L4080-L4115
Kind regards André
May 15 2019
parent Andre Pany <andre s-e-a-p.de> writes:
On Thursday, 16 May 2019 at 05:43:47 UTC, Andre Pany wrote:
 Hi,

 could someone look at this regression, started with ~ 2.084
 https://issues.dlang.org/show_bug.cgi?id=19701

 LLD fails to link, in case you use dflags -Xfdocs.json
 Kinke was kind and already analyzed the cause.

 The object files differ. With `-Df`, there's an external 
 reference to
 _D6object__T6hashOfTxaZQlFNaNbNiNfKxaZm, while it's
 _D4core8internal4hash__T6hashOfTaZQkFNaNbNiNexaZm without that 
 switch.
 
 Looking at object.d, that's because -Df defines 
 `version=D_Ddoc`, so that object.hashOf isn't an alias, but a 
 wrapper: 
 https://github.com/dlang/druntime/blob/58dcda229e0658451325b70243fb5cb67c6cda46/src/object.d#L4080-L4115
Kind regards André
Thank you so much Rainer for solving the issue! Kind regards André
May 16 2019