1#include <assert.h> 2 3int a, *b, c, d, f, **i, p, q, *r; 4short o, j; 5 6static int __attribute__((noinline, noclone)) 7fn1 (int *p1, int **p2) 8{ 9 int **e = &b; 10 for (; p; p++) 11 *p1 = 1; 12 *e = *p2 = &d; 13 14 assert (r); 15 16 return c; 17} 18 19static int ** __attribute__((noinline, noclone)) 20fn2 (void) 21{ 22 for (f = 0; f != 42; f++) 23 { 24 int *g[3] = {0, 0, 0}; 25 for (o = 0; o; o--) 26 for (; a > 1;) 27 { 28 int **h[1] = { &g[2] }; 29 } 30 } 31 return &r; 32} 33 34int 35main (void) 36{ 37 i = fn2 (); 38 fn1 (b, i); 39 return 0; 40} 41