Thread overview
[Issue 3266] New: rdmd links core.thread twice
Aug 27, 2009
lat7h@virginia.edu
August 27, 2009
http://d.puremagic.com/issues/show_bug.cgi?id=3266

           Summary: rdmd links core.thread twice
           Product: D
           Version: 2.031
          Platform: Other
        OS/Version: Linux
            Status: NEW
          Severity: minor
          Priority: P2
         Component: DMD
        AssignedTo: nobody@puremagic.com
        ReportedBy: lat7h@virginia.edu


Consider the following minimal code in threadbug.d:

    import core.thread;
    void main() { }


Running

    rdmd threadbug.d

gives many linker error messages stating that the core.thread functions are present in both the rdmd-generated temporary "threadbug.o" and the libphobos1.a library file; for instance:

/usr/opt/dmd2/linux/lib/libphobos2.a(thread_42_258.o): In function
`_D4core6thread6Thread6__ctorMFPFZvkZC4core6thread6Thread':
core/thread.d:(.text._D4core6thread6Thread6__ctorMFPFZvkZC4core6thread6Thread+0x0):
multiple definition of
`_D4core6thread6Thread6__ctorMFPFZvkZC4core6thread6Thread'
/tmp/rdmd-threadbug.d-90B05FDCCD9547CEC2BBFC3765364CC0/threadbug.o:/usr/opt/dmd2/src/druntime/import/core/sys/posix/sched.d:(.text._D4core6thread6Thread6__ctorMFPFZvkZC4core6thread6Thread+0x0):
first defined here


Running

    dmd -run threadbug.d

gives no errors.

It appears that rdmd's include-all-dependencies-in-the-o-file approach lacks the proper exception for core.thread.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
August 27, 2009
http://d.puremagic.com/issues/show_bug.cgi?id=3266


Andrei Alexandrescu <andrei@metalanguage.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED
                 CC|                            |andrei@metalanguage.com




-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
January 09, 2011
http://d.puremagic.com/issues/show_bug.cgi?id=3266


Andrei Alexandrescu <andrei@metalanguage.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED


--- Comment #1 from Andrei Alexandrescu <andrei@metalanguage.com> 2011-01-09 08:50:13 PST ---
This has been fixed a while ago. rdmd considers any module starting with "core." a library module.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------