Thread overview
[Issue 18015] [Reg 2.075] link failure unknown [0] section `' in group [.group]
Nov 26, 2017
Mike
Nov 27, 2017
Ludovit Lucenic
Dec 14, 2017
Ludovit Lucenic
Dec 28, 2017
Walter Bright
Dec 29, 2017
Ludovit Lucenic
Sep 20, 2018
Ludovit Lucenic
Oct 10, 2018
Ludovit Lucenic
November 26, 2017
https://issues.dlang.org/show_bug.cgi?id=18015

Mike <slavo5150@yahoo.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |slavo5150@yahoo.com

--- Comment #1 from Mike <slavo5150@yahoo.com> ---
> Will this error message be enough or do I need to provide more information on the issue?

A reduced test case would be most helpful.

--
November 27, 2017
https://issues.dlang.org/show_bug.cgi?id=18015

--- Comment #2 from Ludovit Lucenic <llucenic@gmail.com> ---
I assume it won't be trivial but I'll do my best to provide one soon.

--
December 14, 2017
https://issues.dlang.org/show_bug.cgi?id=18015

--- Comment #3 from Ludovit Lucenic <llucenic@gmail.com> ---
Created attachment 1667
  --> https://issues.dlang.org/attachment.cgi?id=1667&action=edit
Test case for #18015

I managed to eliminate the minimum code and it is surprising how small it is. To reproduce the corrupt output of DMD starting 2.075 run following commands:

> dub fetch vibe.d --version=0.7.32
> dmd -lib -debug -g -w -I~/.dub/packages/vibe-d-0.7.32/vibe-d/source configuration.d -vcolumns

To check the result of compilation I used:

> [[ $(nm configuration.a 2>&1 > /dev/null | grep "not recognized" | wc -l) -gt 0 ]] && echo "Compilation FAILS" || echo "Compilation OK"

Or, just using nm on the generated static library outputs to stderr that's something wrong. Running the test on 2.077 fails, on 2.074.1 succeeds.

--
December 28, 2017
https://issues.dlang.org/show_bug.cgi?id=18015

Walter Bright <bugzilla@digitalmars.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |bugzilla@digitalmars.com

--- Comment #4 from Walter Bright <bugzilla@digitalmars.com> ---
The attachment is just:

  module arinas.platform.configuration;

  import vibe.data.json;

  static:

  Json defaultConfig;

The suspected PR:

  https://github.com/dlang/dmd/pull/6564

--
December 29, 2017
https://issues.dlang.org/show_bug.cgi?id=18015

Ludovit Lucenic <llucenic@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |link-failure

--- Comment #5 from Ludovit Lucenic <llucenic@gmail.com> ---
Walter, the PR 6564 is definitively the cause, not just suspect.

--
September 20, 2018
https://issues.dlang.org/show_bug.cgi?id=18015

--- Comment #6 from Ludovit Lucenic <llucenic@gmail.com> ---
May I ask, if this would be addressed any time soon, guys? I am really willing to help - if needed, however, the touched code in this PR is quite complex.

I cannot upgrade my platform built in D from version 2.074.1 to any of the more recent compiler versions because of this bug.

--
October 10, 2018
https://issues.dlang.org/show_bug.cgi?id=18015

--- Comment #7 from Ludovit Lucenic <llucenic@gmail.com> ---
Hello guys,

if this is of any help, I found out, that commenting out
> align(8)
from before the definition of
> struct Json
in vibe.d's vibe.data.json module fixes the linkage.

Anyway, value of align(1,2,4) will just work; values from 8 through 128 break
the linkage.


---
Correction to above comments (dash instead of dot):
`> dub fetch vibe-d --version=0.7.32`

--