Bug 108167 - d: internal compiler error: in binary_op, at d/expr.cc:117
Summary: d: internal compiler error: in binary_op, at d/expr.cc:117
Status: RESOLVED FIXED
Alias: None
Product: gcc
Classification: Unclassified
Component: d (show other bugs)
Version: 13.0
: P3 normal
Target Milestone: ---
Assignee: Iain Buclaw
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-12-18 21:35 UTC by Iain Buclaw
Modified: 2023-03-03 00:28 UTC (History)
0 users

See Also:
Host:
Target:
Build:
Known to work:
Known to fail:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Iain Buclaw 2022-12-18 21:35:41 UTC
auto gdcTrunkICE(const(ubyte[32])[] a)
{
    return cast(const(ubyte)*)&a[1][0];
}

Caused by a front-end change that changed `&a[1][0]` into `&a[1] + null`.
Comment 1 GCC Commits 2023-03-03 00:26:19 UTC
The master branch has been updated by Iain Buclaw <ibuclaw@gcc.gnu.org>:

https://gcc.gnu.org/g:33a7811896a6c8e6fa71e385dbdf5013d833a116

commit r13-6431-g33a7811896a6c8e6fa71e385dbdf5013d833a116
Author: Iain Buclaw <ibuclaw@gdcproject.org>
Date:   Mon Feb 27 18:38:53 2023 +0100

    d: Add test for PR d/108167 to the testsuite [PR108167]
    
    The D front-end implementation got fixed in upstream, add test to the
    gdc testsuite to check we don't regress on it.
    
            PR d/108167
    
    gcc/testsuite/ChangeLog:
    
            * gdc.dg/pr108167.d: New test.
Comment 2 Iain Buclaw 2023-03-03 00:28:35 UTC
Fix has already been committed as part of a previous upstream/dmd merge.  Added test.