http://d.puremagic.com/issues/show_bug.cgi?id=9044
Rainer Schuetze <[email protected]> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |[email protected] --- Comment #25 from Rainer Schuetze <[email protected]> 2013-05-20 06:13:05 PDT --- I very much suspect that this is caused by the generated internal object file names of a library or other generated identifiers that are assumed to be unique, but clearly this is not guaranteed when building libraries in separate build steps. I tried to generate a small test on that suspicion some time ago, but it didn't trigger a linker error then. I have figured it out now: //////////////////////// module ab; struct AB { int a; int len() { return (new AB).a; } } unittest { } //////////////////////// module ba; struct BA { int b; int len() { return (new BA).b; } } unittest { } //////////////////////// import ab; import ba; int main() { AB ab; BA ba; return ab.len() + ba.len(); } //////////////////////// now building with dmd 2.062: dmd -lib -of"alib.lib" ab.d dmd -lib -of"blib.lib" ba.d dmd -c main.d dmd main.obj alib.lib blib.lib yields: OPTLINK (R) for Win32 Release 8.00.12 Copyright (C) Digital Mars 1989-2010 All rights reserved. http://www.digitalmars.com/ctg/optlink.html blib.lib(object) Offset 013AEH Record Type 0091 Error 1: Previous Definition Different : _D59c:\l\dmd2\windows\bin\..\..\src\druntime\import\object.di.412__ModuleInfoZ blib.lib(object) Offset 0143CH Record Type 00C3 Error 1: Previous Definition Different : _D59c:\l\dmd2\windows\bin\..\..\src\druntime\import\object.di.47__arrayZ blib.lib(object) Offset 01469H Record Type 00C3 Error 1: Previous Definition Different : _D59c:\l\dmd2\windows\bin\..\..\src\druntime\import\object.di.48__assertFiZv blib.lib(object) Offset 01496H Record Type 00C3 Error 1: Previous Definition Different : _D59c:\l\dmd2\windows\bin\..\..\src\druntime\import\object.di.415__unittest_failFiZv blib.lib(object) Offset 00F6EH Record Type 0091 Error 1: Previous Definition Different : _D59c:\l\dmd2\windows\bin\..\..\src\druntime\import\object.di.312__ModuleInfoZ blib.lib(object) Offset 0103BH Record Type 00C3 Error 1: Previous Definition Different : _D59c:\l\dmd2\windows\bin\..\..\src\druntime\import\object.di.37__arrayZ blib.lib(object) Offset 01068H Record Type 00C3 Error 1: Previous Definition Different : _D59c:\l\dmd2\windows\bin\..\..\src\druntime\import\object.di.38__assertFiZv blib.lib(object) Offset 01095H Record Type 00C3 Error 1: Previous Definition Different : _D59c:\l\dmd2\windows\bin\..\..\src\druntime\import\object.di.315__unittest_failFiZv also happens with current git-head. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
