https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98199
--- Comment #3 from Eric Botcazou <ebotcazou at gcc dot gnu.org> --- > struct b { > long a; > short d; > int c; > int f; > int e; > int g; > }; > struct h { > int a; > int i; > short j; > struct b k; > signed : 20; > int e; > int g; > } __attribute__((packed)); > struct { > short a; > unsigned i; > unsigned k; > struct h d; > const int : 30; > signed e : 20; > signed : 18; > } const l = {1, 6, 0, {}, 0}; > int m() { return l.e || 0; } > > since r11-5706-g277ff3406d533990e98cf1c2075b9dc9db6fa48a. Something went wrong on your side here, this cannot possibly be true.