1struct Foo { 2 int *p; 3 int *q; 4}; 5 6void __attribute__((noinline)) 7bar (int **x) 8{ 9 struct Foo *f = (struct Foo *)x; 10 *(f->q) = 0; 11} 12 13int foo(void) 14{ 15 struct Foo f; 16 int i = 1, j = 2; 17 f.p = &i; 18 f.q = &j; 19 bar(&f.p); 20 return j; 21} 22 23extern void abort (void); 24int main() 25{ 26 if (foo () != 0) 27 abort (); 28 return 0; 29} 30