https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109868
--- Comment #5 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
A little more reduced:
```
struct ClockImpl {
virtual void addRef();
long tv_nsec;
int : 0;
};
void f() { ClockImpl b{}; }
```
So maybe this is a gimplifier issue producing the assignment to the zero-sized
bitfield:
b.D.2780 = 0;
What is interesting is GCC 11 didn't produce the assignment but GCC 12 does.
That might have been caused by r12-1150-g34aae6b561871d . I will look into it
soon because we should not be emitting an assignment here ...