OSDN Git Service

testsuite/
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.c-torture / execute / pr36343.c
1 extern void abort (void);
2
3 void __attribute__((noinline))
4 bar (int **p)
5 {
6   float *q = (float *)p;
7   *q = 0.0;
8 }
9
10 float __attribute__((noinline))
11 foo (int b)
12 {
13   int *i = 0;
14   float f = 1.0;
15   int **p;
16   if (b)
17     p = &i;
18   else
19     p = (int **)&f;
20   bar (p);
21   if (b)
22     return **p;
23   return f;
24 }
25
26 int main()
27 {
28   if (foo(0) != 0.0)
29     abort ();
30   return 0;
31 }
32