1 /* { dg-do run } */ 2 /* { dg-options "-O2" } */ 3 4 extern void abort (void); 5 struct S { 6 int *i[4]; 7 int *p1; 8 int *p2; 9 int *p3; 10 int *p4; 11 }; 12 int **b; main()13int main() 14 { 15 int i = 1; 16 struct S s; 17 s.p3 = &i; 18 int **p; 19 if (b) 20 p = b; 21 else 22 p = &s.i[2]; 23 p += 4; 24 if (!b) 25 **p = 0; 26 if (i != 0) 27 abort (); 28 return i; 29 } 30