1 /* { dg-do run } */ 2 3 extern void abort (void); 4 5 static inline void foo(int * __restrict pr)6foo (int * __restrict pr) 7 { 8 *pr = 1; 9 } 10 11 int __attribute__((noinline,noclone)) bar(int * __restrict qr)12bar (int * __restrict qr) 13 { 14 *qr = 0; 15 foo (qr); 16 return *qr; 17 } 18 main()19int main() 20 { 21 int i; 22 if (bar (&i) != 1) 23 abort (); 24 return 0; 25 } 26