short *f(short *a, int b, int *d) __attribute__((noinline,noclone)); | |
short *f(short *a, int b, int *d) | |
{ | |
short c = *a; | |
a++; | |
c = b << c; | |
*d = c; | |
return a; | |
} | |
int main(void) | |
{ | |
int d; | |
short a[2]; | |
a[0] = 0; | |
if (f(a, 1, &d) != &a[1]) | |
__builtin_abort (); | |
if (d != 1) | |
__builtin_abort (); | |
return 0; | |
} |