Thread overview
[Issue 21497] "Error: unknown" for generating struct using CTFE
Dec 20, 2020
Tim
Dec 17, 2022
Iain Buclaw
Jan 08, 2023
Basile-z
Jan 08, 2023
Basile-z
December 20, 2020
https://issues.dlang.org/show_bug.cgi?id=21497

Tim <tim.dlang@t-online.de> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |ice, rejects-valid

--- Comment #1 from Tim <tim.dlang@t-online.de> ---
See also issues 20684 and 20753.

--
December 17, 2022
https://issues.dlang.org/show_bug.cgi?id=21497

Iain Buclaw <ibuclaw@gdcproject.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P1                          |P3

--
January 08, 2023
https://issues.dlang.org/show_bug.cgi?id=21497

Basile-z <b2.temp@gmx.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |CTFE
                 CC|                            |b2.temp@gmx.com

--- Comment #2 from Basile-z <b2.temp@gmx.com> ---
reduced and rewritten to track the issue better:

```
struct T
{
    ubyte[1] data;
}

void assignZero(ref ubyte[1] dst)
{
    dst[] = 0; // dst[0 .. 1] = 0; eliminates the ICE
}

int getInit()
{
    T r;
    assignZero(r.data);
    return 0;
}

enum int test = getInit(); ```

The problem seems to be related to CTFE + the slice assign lo and hi indexes + ref parameter.

--
January 08, 2023
https://issues.dlang.org/show_bug.cgi?id=21497

Basile-z <b2.temp@gmx.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Hardware|x86_64                      |All
                 OS|Linux                       |All

--