1 short *f(short *a, int b, int *d) __attribute__((noinline,noclone)); 2 f(short * a,int b,int * d)3short *f(short *a, int b, int *d) 4 { 5 short c = *a; 6 a++; 7 c = b << c; 8 *d = c; 9 return a; 10 } 11 main(void)12int main(void) 13 { 14 int d; 15 short a[2]; 16 a[0] = 0; 17 if (f(a, 1, &d) != &a[1]) 18 __builtin_abort (); 19 if (d != 1) 20 __builtin_abort (); 21 return 0; 22 } 23