Thread overview
[Issue 7072] New: [2.057 Beta] Assertion failure: '0' on line 145 in file 'mtype.c'
Dec 06, 2011
David Simcha
Dec 06, 2011
David Simcha
Dec 07, 2011
David Simcha
Dec 07, 2011
Walter Bright
Dec 07, 2011
Walter Bright
Dec 07, 2011
Robert Clipsham
Dec 07, 2011
David Simcha
December 06, 2011
http://d.puremagic.com/issues/show_bug.cgi?id=7072

           Summary: [2.057 Beta]  Assertion failure:  '0' on line 145 in
                    file 'mtype.c'
           Product: D
           Version: D2
          Platform: Other
        OS/Version: Windows
            Status: NEW
          Keywords: ice-on-valid-code
          Severity: regression
          Priority: P2
         Component: DMD
        AssignedTo: nobody@puremagic.com
        ReportedBy: dsimcha@yahoo.com


--- Comment #0 from David Simcha <dsimcha@yahoo.com> 2011-12-06 06:26:07 PST ---
I get this error message when trying to build SciD with 2.057 beta.

Assertion failure: '0' on line 145 in file 'mtype.c'

This doesn't happen with 2.056.  I haven't had a chance to reduce this yet, but I will try tonight if the assertion failure isn't enough of a hint.  (I don't imagine reducing this one will be easy.)

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



--- Comment #1 from David Simcha <dsimcha@yahoo.com> 2011-12-06 15:56:46 PST ---
I didn't realize the significance of this until I looked at the source code to mtype.c, but there's actually a line before the assertion failure line.  The full error message is:

ty = 41
Assertion failure: '0' on line 145 in file 'mtype.c'

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



--- Comment #2 from David Simcha <dsimcha@yahoo.com> 2011-12-06 17:33:24 PST ---
Unbelievably simple test case after about 1.5 hours of recursively reducing SciD code:

struct S
{
    this(A)(A args) { }
}

void main() {
   auto s = S( null );
}

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


Walter Bright <bugzilla@digitalmars.com> changed:

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


--- Comment #3 from Walter Bright <bugzilla@digitalmars.com> 2011-12-06 20:54:20 PST ---
Thanks for your hard work, David. I found the problem, and am testing the fix.

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



--- Comment #4 from Walter Bright <bugzilla@digitalmars.com> 2011-12-06 21:09:06 PST ---
https://github.com/D-Programming-Language/dmd/commit/0a20f8f170cbcbf3f3fd6971b339e8d82d311a1c

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


Robert Clipsham <robert@octarineparrot.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |robert@octarineparrot.com


--- Comment #5 from Robert Clipsham <robert@octarineparrot.com> 2011-12-07 20:07:03 GMT ---
(In reply to comment #2)
> Unbelievably simple test case after about 1.5 hours of recursively reducing SciD code:

Have you come cross this tool? It helps tremendously with reducing test cases: https://github.com/cybershadow/dustmite

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



--- Comment #6 from David Simcha <dsimcha@yahoo.com> 2011-12-07 13:19:49 PST ---
I'm aware of DustMite.  I just never got around to setting it up/learning how it works because it doesn't look easy.  Usually reducing stuff like this doesn't take very long.  It's just that this one had to (unexpectedly) follow a whole chain of template instantiations.

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