1 short *f(short *a, int b, int *d) __attribute__((noinline,noclone));
2 
f(short * a,int b,int * d)3 short *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)12 int 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