1 /* PR middle-end/52979 */ 2 3 /* { dg-require-effective-target int32plus } */ 4 5 extern void abort (void); 6 int c, d, e; 7 8 void foo(void)9foo (void) 10 { 11 } 12 13 struct __attribute__((packed)) S { int g : 31; int h : 6; }; 14 struct S a = { 1 }; 15 static struct S b = { 1 }; 16 17 void bar(void)18bar (void) 19 { 20 a.h = 1; 21 struct S f = { }; 22 b = f; 23 e = 0; 24 if (d) 25 c = a.g; 26 } 27 28 void baz(void)29baz (void) 30 { 31 bar (); 32 a = b; 33 } 34 35 int main()36main () 37 { 38 baz (); 39 if (a.g) 40 abort (); 41 return 0; 42 } 43