1 /* 2 20011109-1.c from the execute part of the gcc torture tests. 3 */ 4 5 #include <testfwk.h> 6 7 #ifdef __SDCC 8 #pragma std_c99 9 #endif 10 fail1(void)11void fail1(void) 12 { 13 ASSERT (0); 14 } fail2(void)15void fail2(void) 16 { 17 ASSERT (0); 18 } fail3(void)19void fail3(void) 20 { 21 ASSERT (0); 22 } fail4(void)23void fail4(void) 24 { 25 ASSERT (0); 26 } 27 28 foo(long x)29void foo(long x) 30 { 31 switch (x) 32 { 33 case -6: 34 fail1 (); break; 35 case 0: 36 fail2 (); break; 37 case 1: case 2: 38 break; 39 case 3: case 4: case 5: 40 fail3 (); 41 break; 42 default: 43 fail4 (); 44 break; 45 } 46 switch (x) 47 { 48 49 case -3: 50 fail1 (); break; 51 case 0: case 4: 52 fail2 (); break; 53 case 1: case 3: 54 break; 55 case 2: case 8: 56 ASSERT (0); 57 break; 58 default: 59 fail4 (); 60 break; 61 } 62 } 63 64 void testTortureExecute(void)65testTortureExecute (void) 66 { 67 foo (1); 68 return; 69 } 70 71