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