www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 13774] New: Multiple definition of `conv_50c_dc8` with three


          Issue ID: 13774
           Summary: Multiple definition of `conv_50c_dc8` with three
                    libraries and `std.file` import
           Product: D
           Version: D2
          Hardware: All
                OS: All
            Status: NEW
          Severity: regression
          Priority: P1
         Component: Phobos
          Assignee: nobody puremagic.com
          Reporter: verylonglogin.reg gmail.com

The first library is Phobos. This code should build fine:

m1.d & m2.d:
import std.file;
Command (for Windows):
dmd -debug -lib m1.d
dmd -debug -lib m2.d m1.lib
m2.lib: Error: multiple definition of conv_50c_dc8:
and conv:
(command output is probably encoded in CP1251)

This issue almost blocks Phobos usage in real projects as it breaks building
libraries and linker error doesn't give any clue of its reason.

Also see Issue 13359.

Note: this report is about Phobos regression preventing its usage. Underlying
compiler bug is some critical bug triggered by current Phobos version.

Tools versions:
dmd: c0e814350948feac34946c29186d17518ea954dd
druntime: 2350ee4ec77d7b919454eb2f16d91b23c3891cb6
phobos: e46ccaae82d6ddbd0c98ac233562204c7007f296

Nov 25 2014