1 /* { dg-do compile } */ 2 /* { dg-options "-O2" } */ 3 4 #define assert(x) if (!(x)) __builtin_abort () 5 6 int a, b, c, d, e, f, g; 7 8 int fn1()9fn1 () 10 { 11 int *h = &c; 12 for (; c < 1; c++) 13 { 14 int *i = &a, *k = &a; 15 f = 0; 16 if (b) 17 return 0; 18 if (*h) 19 { 20 int **j = &i; 21 *j = 0; 22 d = 0; 23 } 24 else 25 g = e = 0; 26 if (*h) 27 { 28 int **l = &k; 29 *l = &g; 30 } 31 d &= *h; 32 assert (k == &a || k); 33 assert (i); 34 } 35 return 0; 36 } 37 38 int main()39main () 40 { 41 fn1 (); 42 return 0; 43 } 44