Thread overview
[Issue 24257] ImportC: ICE on accessing last _Bool bitfield
Nov 24, 2023
Walter Bright
Nov 24, 2023
Dennis
Nov 24, 2023
Walter Bright
Nov 25, 2023
Dlang Bot
Nov 25, 2023
Dlang Bot
Nov 26, 2023
Dlang Bot
November 24, 2023
https://issues.dlang.org/show_bug.cgi?id=24257

Walter Bright <bugzilla@digitalmars.com> changed:

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

--- Comment #1 from Walter Bright <bugzilla@digitalmars.com> ---
Since n is not a pointer, this should be a semantic error.

--
November 24, 2023
https://issues.dlang.org/show_bug.cgi?id=24257

--- Comment #2 from Dennis <dkorpel@live.nl> ---
Looks like dustmite found another bug by reducing away the star from the type. Filed as issue 24259. Fixed test case:

```
typedef struct
{
    unsigned : 15;
    _Bool done : 1;
} S;

_Bool advance()
{
    S *n;
    if (n->done) {}
}
```

--
November 24, 2023
https://issues.dlang.org/show_bug.cgi?id=24257

--- Comment #3 from Walter Bright <bugzilla@digitalmars.com> ---
This is not an ImportC specific bug, the same code in D exhibits the same failure:

struct S
{
    uint : 15;
    bool done : 1;
}

void advance()
{
    S n;
    if (n.done) {}
}

--
November 25, 2023
https://issues.dlang.org/show_bug.cgi?id=24257

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 #15861 "fix Issue 24257 - ImportC: ICE on accessing last _Bool bitfield" fixing this issue:

- fix Issue 24257 - ImportC: ICE on accessing last _Bool bitfield

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

--
November 25, 2023
https://issues.dlang.org/show_bug.cgi?id=24257

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 #15861 "fix Issue 24257 - ImportC: ICE on accessing last _Bool bitfield" was merged into stable:

- 80dcf2c00e8e086a8c78a336e714a00f73c63ffd by Walter Bright:
  fix Issue 24257 - ImportC: ICE on accessing last _Bool bitfield

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

--
November 26, 2023
https://issues.dlang.org/show_bug.cgi?id=24257

--- Comment #6 from Dlang Bot <dlang-bot@dlang.rocks> ---
dlang/dmd pull request #15865 "Merge stable into master" was merged into master:

- e1197fc765d0b94470a96f8655e9e2d7d8267a66 by Walter Bright:
  fix Issue 24257 - ImportC: ICE on accessing last _Bool bitfield (#15861)

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

--