Thread overview
[Issue 13599] [D1] backend/cod1.c ICE with -inline
Oct 10, 2014
Dicebot
Oct 12, 2014
Walter Bright
Oct 12, 2014
Walter Bright
Oct 12, 2014
Walter Bright
Oct 13, 2014
Walter Bright
October 10, 2014
https://issues.dlang.org/show_bug.cgi?id=13599

Dicebot <public@dicebot.lv> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |industry

--
October 12, 2014
https://issues.dlang.org/show_bug.cgi?id=13599

Walter Bright <bugzilla@digitalmars.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |bugzilla@digitalmars.com
           Hardware|x86_64                      |All
                 OS|Linux                       |All

--- Comment #1 from Walter Bright <bugzilla@digitalmars.com> ---
This one works on D2.

--
October 12, 2014
https://issues.dlang.org/show_bug.cgi?id=13599

--- Comment #2 from Walter Bright <bugzilla@digitalmars.com> ---
Reduced test case:

struct E { }

struct M ( N... )
{
    struct { N P; }

    E R()
    {
        foreach ( U ; P )
            return U;
        assert(0);
    }
}

void MB( )
{
    auto SB = cast(M!(E)*) null;
    SB.R();
}

--
October 12, 2014
https://issues.dlang.org/show_bug.cgi?id=13599

--- Comment #3 from Walter Bright <bugzilla@digitalmars.com> ---
Workaround, in case it is blocking anyone:

(In reply to Walter Bright from comment #2)
>     E R()
>     {
>         foreach ( U ; P )
>             return U;
>         assert(0);
          return E();   // add this line
>     }
> }

--
October 13, 2014
https://issues.dlang.org/show_bug.cgi?id=13599

github-bugzilla@puremagic.com changed:

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

--
October 13, 2014
https://issues.dlang.org/show_bug.cgi?id=13599

--- Comment #4 from github-bugzilla@puremagic.com ---
Commit pushed to fix13599 at https://github.com/D-Programming-Language/dmd

https://github.com/D-Programming-Language/dmd/commit/d90edc2afeb92e57dab921d3dcf7a1ed46f6c5a6 fix Issue 13599 - [D1] backend/cod1.c ICE with -inline

--
October 13, 2014
https://issues.dlang.org/show_bug.cgi?id=13599

--- Comment #5 from github-bugzilla@puremagic.com ---
Commit pushed to dmd-1.x at https://github.com/D-Programming-Language/dmd

https://github.com/D-Programming-Language/dmd/commit/b54f5c34076ce859491f24461cd6382551438a7b fix Issue 13599 - [D1] backend/cod1.c ICE with -inline

--
October 13, 2014
https://issues.dlang.org/show_bug.cgi?id=13599

--- Comment #6 from Walter Bright <bugzilla@digitalmars.com> ---
An even smaller test case:

struct E { }

E R()
{
    {   return E.init; }
    assert(0);
}

void MB( )
{
    R();
}

--