https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120096

            Bug ID: 120096
           Summary: d: Side effects not evaluated for array literals on
                    stack
           Product: gcc
           Version: 13.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: d
          Assignee: ibuclaw at gdcproject dot org
          Reporter: ibuclaw at gcc dot gnu.org
  Target Milestone: ---

This example fails (requires -fpreview=dip1000)

```
struct S
{
    this(int p) nothrow @nogc @safe
    { f = p; }
    int f;
}

int main() nothrow @nogc @safe
{
    scope S[] sa = [S(1), S(2)];

    assert(sa[0].f == 1);
    assert(sa[1].f == 2);
    return 0;
}
```

The side effects in `[S(1), S(2)]` are lost during code generation.

Reply via email to