Thread overview
[Issue 11081] New: Win64: duplicate COMDAT with failed compilation with lambdas
Sep 21, 2013
Rainer Schuetze
Sep 21, 2013
Rainer Schuetze
Sep 21, 2013
Kenji Hara
Sep 23, 2013
Kenji Hara
September 21, 2013
http://d.puremagic.com/issues/show_bug.cgi?id=11081

           Summary: Win64: duplicate COMDAT with failed compilation with
                    lambdas
           Product: D
           Version: unspecified
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: regression
          Priority: P2
         Component: DMD
        AssignedTo: nobody@puremagic.com
        ReportedBy: r.sagitario@gmx.de


--- Comment #0 from Rainer Schuetze <r.sagitario@gmx.de> 2013-09-21 02:52:59 PDT ---
With current git-HEAD, this code snippet extracted from the std.exception unittests:

T ifThrown2(E : Throwable, T)(T delegate(E) errorHandler)
{
    return errorHandler();
}

unittest
{
    static if (__traits(compiles, ifThrown2!Exception(e => 0)))
    {
    }
    static if (__traits(compiles, ifThrown2!Exception(e => 0)))
    {
    }
}

compiled with "dmd -m64 -unittest -main" results in:

test.obj : fatal error LNK1179: invalid or corrupt file: duplicate COMDAT
'_D4te
st15__unittestL32_5FZv17__T0TC9ExceptionZ0MFNaNbNfC9ExceptionZi'

This does not happen with dmd 2.063. The code actually does not compile, so it seems that broken code is emitted to the object file.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
September 21, 2013
http://d.puremagic.com/issues/show_bug.cgi?id=11081


Rainer Schuetze <r.sagitario@gmx.de> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |pull


--- Comment #1 from Rainer Schuetze <r.sagitario@gmx.de> 2013-09-21 04:33:22 PDT ---
https://github.com/D-Programming-Language/dmd/pull/2578

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
September 21, 2013
http://d.puremagic.com/issues/show_bug.cgi?id=11081


Kenji Hara <k.hara.pg@gmail.com> changed:

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


--- Comment #2 from Kenji Hara <k.hara.pg@gmail.com> 2013-09-21 09:52:11 PDT ---
(In reply to comment #1)
> https://github.com/D-Programming-Language/dmd/pull/2578

Another one: https://github.com/D-Programming-Language/dmd/pull/2579

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
September 22, 2013
http://d.puremagic.com/issues/show_bug.cgi?id=11081



--- Comment #3 from github-bugzilla@puremagic.com 2013-09-22 11:47:58 PDT ---
Commits pushed to master at https://github.com/D-Programming-Language/dmd

https://github.com/D-Programming-Language/dmd/commit/e1ed2905b2b7e996a4154d079fd8a8660424b5af fix Issue 11081 - Win64: duplicate COMDAT with failed compilation with lambdas

https://github.com/D-Programming-Language/dmd/commit/4981236072fc4625b959d9146d073e808436f334 Merge pull request #2579 from 9rnsr/fix11081

[REG2.064a] Issue 11081 - Win64: duplicate COMDAT with failed compilation with lambdas

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
September 23, 2013
http://d.puremagic.com/issues/show_bug.cgi?id=11081


Kenji Hara <k.hara.pg@gmail.com> changed:

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


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