www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 11223] New: inline ice with tuple assignment and if/else

reply d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=11223

           Summary: inline ice with tuple assignment and if/else
           Product: D
           Version: D2
          Platform: All
        OS/Version: All
            Status: NEW
          Keywords: ice
          Severity: regression
          Priority: P4
         Component: DMD
        AssignedTo: nobody puremagic.com
        ReportedBy: code dawg.eu



cat > bug.d << CODE
struct Tuple(T...)
{
    T values;

    void opAssign(Tuple rhs)
    {
        if (0)
            values = rhs.values;
        else
            assert(0);
    }
}

void bug()
{
    Tuple!string tmp;
    tmp = Tuple!string();
}
CODE

dmd -c -inline bug

----
glue.c:1265: virtual unsigned int Type::totym(): Assertion `0' failed.
----

I reduced that test case from the vibe.d source code. The ICE is triggered by
the opAssign in std.typecons.Tuple so this might affects a lot of code and
fixing the regression is very important.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Oct 10 2013
next sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=11223


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

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



https://github.com/D-Programming-Language/dmd/pull/2653

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Oct 10 2013
prev sibling next sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=11223




Commits pushed to master at https://github.com/D-Programming-Language/dmd

https://github.com/D-Programming-Language/dmd/commit/250a8734370d223f1757c9796e284cc45a82e6ec
fix Issue 11223 - inline ice with tuple assignment and if/else

Superseded fix of 36a44cbcea9fbb18b221f77e00f2dca77f21bc88

https://github.com/D-Programming-Language/dmd/commit/9c136af1c21423a252fcf019f3aca112028667f8


[REG2.064a] Issue 11223 - inline ice with tuple assignment and if/else

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Oct 11 2013
prev sibling next sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=11223


Walter Bright <bugzilla digitalmars.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
                 CC|                            |bugzilla digitalmars.com
         Resolution|                            |FIXED


-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Oct 11 2013
prev sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=11223




Thanks a lot for the quick fix.

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