www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 1270] New: -inline produces an ICE

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

           Summary: -inline produces an ICE
           Product: D
           Version: 1.015
          Platform: PC
        OS/Version: Windows
            Status: NEW
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P2
         Component: DMD
        AssignedTo: bugzilla digitalmars.com
        ReportedBy: tazz gmx.at


Normal compilation works, -O works, only -inline fails with
"Internal error: ..\ztc\cod1.c 1662"

The following code is a minimal but complete testcase:

module bignum;

struct bignum
{
    bool smaller(bignum a, bignum b)
    {
        if (true) return true;
        else      return false;     // comment this out => no ICE for "dmd
bignumtest.d -inline"
        assert(0);          // comment this out => no ICE for "dmd bignumtest.d
-inline"
    }

    bool equal(bignum a, bignum b)
    {
        if (!smaller(a,b))     // comment this out => no ICE for "dmd
bignumtest.d -inline"
            return true;
        return false;
    }
}

void main()
{}


-- 
Jun 16 2007
next sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=1270






Here's a slightly more minimal testcase:

struct bignum
{
    bool smaller()
    {
        if (true) return false;
        else      return false;
        assert(0);
    }

    void equal()
    {
        if (!smaller)
            return;
    }
}


-- 
Jun 17 2007
prev sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=1270


onlystupidspamhere yahoo.se changed:

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





Fixed in 1.017.


-- 
Jun 26 2007