1 /* { dg-do run } */ 2 /* { dg-options "-O" } */ 3 4 struct S0 { 5 signed f4; 6 signed f9 : 5; 7 } a[6][5], b = {2} 8 9 ; 10 int c, d; fn1()11int fn1() { 12 struct S0 e[5][6]; 13 struct S0 f; 14 b = f = e[2][5] = a[5][0]; 15 if (d) 16 ; 17 else 18 return f.f9; 19 e[c][45] = a[4][4]; 20 } 21 main()22int main() { 23 fn1(); 24 if (b.f4 != 0) 25 __builtin_abort (); 26 return 0; 27 } 28