July 24, 2007
http://d.puremagic.com/issues/show_bug.cgi?id=1368

           Summary: Default template parameter + template recursion + mixin
                    = segfault
           Product: D
           Version: unspecified
          Platform: PC
        OS/Version: Windows
            Status: NEW
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P2
         Component: DMD
        AssignedTo: bugzilla@digitalmars.com
        ReportedBy: reiner.pope@gmail.com


The following code causes a compiler segfault:

void main()
{
    mixin Foo!();
}

template Foo(uint i = 0)
{
    static if (i == 0)
        mixin Foo!(i + 1);
}

Removing the parameter's default value, or turning the mixin in main() into an alias avoids the segfault.


-- 

April 03, 2009
http://d.puremagic.com/issues/show_bug.cgi?id=1368


clugdbug@yahoo.com.au changed:

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




------- Comment #1 from clugdbug@yahoo.com.au  2009-04-03 06:08 -------
No longer segfaults in DMD1.042 and DMD2.027.


--