2003-12-26 Guilhem Lavaux <guilhem@kaffe.org>
[official-gcc.git] / gcc / testsuite / gcc.c-torture / execute / switch-1.c
blob30cffed7b857865e3fa23827aaac7915b461d37e
1 /* Copyright (C) 2003 Free Software Foundation.
3 Test that switch statements suitable using case bit tests are
4 implemented correctly.
6 Written by Roger Sayle, 01/25/2001. */
8 extern void abort (void);
10 int
11 foo (int x)
13 switch (x)
15 case 4:
16 case 6:
17 case 9:
18 case 11:
19 return 30;
21 return 31;
24 int
25 main (int argc)
27 int i, r;
29 for (i=-1; i<66; i++)
31 r = foo (i);
32 if (i == 4)
34 if (r != 30)
35 abort ();
37 else if (i == 6)
39 if (r != 30)
40 abort ();
42 else if (i == 9)
44 if (r != 30)
45 abort ();
47 else if (i == 11)
49 if (r != 30)
50 abort ();
52 else if (r != 31)
53 abort ();
55 return 0;