www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 14828] New: duplicate symbol __ModuleInfoZ depending on

https://issues.dlang.org/show_bug.cgi?id=14828

          Issue ID: 14828
           Summary: duplicate symbol __ModuleInfoZ depending on ordering
                    of files passed to dmd
           Product: D
           Version: D2
          Hardware: x86
                OS: Mac OS X
            Status: NEW
          Severity: regression
          Priority: P1
         Component: dmd
          Assignee: nobody puremagic.com
          Reporter: timothee.cour2 gmail.com

Reduced test case:
see
https://github.com/timotheecour/dsnippet/tree/master/bug_duplicate_symbol_error

The makefile in that directory should explain the bug:

Makefile:
----

dmd=~/git_clone/D/Digger/result/bin/dmd

#works with dmd
all0:
    ${dmd} -oflibproj6.a -lib -g project2.d foo2.d foo1.d
    ${dmd} -ofout -g libproj6.a foo1.d main.d

#works with dmd
all1:
    ${dmd} -oflibproj6.a -lib -g project2.d foo1.d foo2.d
    ${dmd} -ofout -g libproj6.a foo2.d main.d

#worked with dmd_067_1_X
#works with dmd from: ./digger build v2.068.0-b1
#FAILS with dmd from: ./digger build 
#FAILS with dmd from: ./digger build master (v2.068-devel-494a91d)
#has failed for a few months on git master AFAIR
all1_order_flipped:
    ${dmd} -oflibproj6.a -lib -g project2.d foo2.d foo1.d
    ${dmd} -ofout -g libproj6.a foo2.d main.d
----


This bug is very annoying as it prevents partial recompilation

--
Jul 26 2015