/* { dg-require-effective-target int32plus } */ /* PR middle-end/40204 */ struct S { unsigned int a : 4; unsigned int b : 28; } s; char c; void f (void) { s.a = (c >> 4) & ~(1 << 4); }