Thread overview
[Issue 21403] [ICE] dmd/backend/cgcs.d:375: Assertion `0' failed.
Nov 18, 2020
Iain Buclaw
Nov 21, 2020
Iain Buclaw
Mar 21, 2021
Iain Buclaw
Mar 23, 2021
Walter Bright
Mar 23, 2021
Walter Bright
[Issue 21403] dmd/backend/cgcs.d:375 assert failed
Mar 24, 2021
Walter Bright
Mar 24, 2021
Dlang Bot
Mar 26, 2021
Dlang Bot
November 18, 2020
https://issues.dlang.org/show_bug.cgi?id=21403

Iain Buclaw <ibuclaw@gdcproject.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |ibuclaw@gdcproject.org

--- Comment #1 from Iain Buclaw <ibuclaw@gdcproject.org> ---
(In reply to Iain Buclaw from comment #0)
> This test ICE's the dmd backend.
> ---
> auto mul11ret3(T)(ref T s)
Aside: A more accurate description of that function would be cat11ret3.

--
November 21, 2020
https://issues.dlang.org/show_bug.cgi?id=21403

Iain Buclaw <ibuclaw@gdcproject.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |ice, ice-on-valid-code

--
March 21, 2021
https://issues.dlang.org/show_bug.cgi?id=21403

Iain Buclaw <ibuclaw@gdcproject.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |backend

--
March 23, 2021
https://issues.dlang.org/show_bug.cgi?id=21403

Walter Bright <bugzilla@digitalmars.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |bugzilla@digitalmars.com

--- Comment #2 from Walter Bright <bugzilla@digitalmars.com> ---
A no-template version:

 int[] mul11ret3(ref int[] s) {
    s ~= 11;
    return [3];
 }

 int[] test(int[] val) {
    (val ~= mul11ret3(val)) ~= 7;
    return val;
 }

 void main() {
    static assert(test([2]) == [2, 11, 3, 7]);
    assert(test([2]) == [2, 11, 3, 7]);
 }

--
March 23, 2021
https://issues.dlang.org/show_bug.cgi?id=21403

--- Comment #3 from Walter Bright <bugzilla@digitalmars.com> ---
And a minimal test case:

 int[] mul11ret3(ref int[] s);

 void test(int[] val) {
    (val ~= mul11ret3(val)) ~= 7;
 }

--
March 24, 2021
https://issues.dlang.org/show_bug.cgi?id=21403

Walter Bright <bugzilla@digitalmars.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|[ICE]                       |dmd/backend/cgcs.d:375
                   |dmd/backend/cgcs.d:375:     |assert failed
                   |Assertion `0' failed.       |

--
March 24, 2021
https://issues.dlang.org/show_bug.cgi?id=21403

Dlang Bot <dlang-bot@dlang.rocks> changed:

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

--- Comment #4 from Dlang Bot <dlang-bot@dlang.rocks> ---
@WalterBright created dlang/dmd pull request #12304 "fix Issue 21403 - dmd/backend/cgcs.d:375 assert failed" fixing this issue:

- fix Issue 21403 - dmd/backend/cgcs.d:375 assert failed

https://github.com/dlang/dmd/pull/12304

--
March 26, 2021
https://issues.dlang.org/show_bug.cgi?id=21403

Dlang Bot <dlang-bot@dlang.rocks> changed:

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

--- Comment #5 from Dlang Bot <dlang-bot@dlang.rocks> ---
dlang/dmd pull request #12304 "fix Issue 21403 - dmd/backend/cgcs.d:375 assert failed" was merged into master:

- d6da896ddd145f5ee25c709b5213b0652cd6edc0 by Walter Bright:
  fix Issue 21403 - dmd/backend/cgcs.d:375 assert failed

https://github.com/dlang/dmd/pull/12304

--