OSDN Git Service

Backported from mainline
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.c-torture / compile / 20011114-3.c
1 typedef struct { int s, t; } C;
2 C x;
3 int foo (void);
4 void bar (int);
5
6 int baz (void)
7 {
8   int a = 0, c, d = 0;
9   C *b = &x;
10
11   while ((c = foo ()))
12     switch(c)
13       {
14       case 23:
15         bar (1);
16         break;
17       default:
18         break;
19       }
20
21   if (a == 0 || (a & 1))
22     {
23       if (b->s)
24         {
25           if (a)
26             bar (1);
27           else
28             a = 16;
29         }
30       else if (b->t)
31         {
32           if (a)
33             bar (1);
34           else
35             a = 32;
36         }
37     }
38
39   if (d && (a & ~127))
40     bar (2);
41   return 0;
42 }