1 struct X { int *p; } x;
2 
3 struct X __attribute__((noinline))
foo(int * p)4 foo(int *p) { struct X x; x.p = p; return x; }
5 
6 void __attribute((noinline))
bar()7 bar() { *x.p = 1; }
8 
9 extern void abort (void);
main()10 int main()
11 {
12   int i = 0;
13   x = foo(&i);
14   bar();
15   if (i != 1)
16     abort ();
17   return 0;
18 }
19