switch.c revision 9f3d942e9970bc8f51add390b2a2c46b5a2ab747
1// RUN: clang -parse-ast -verify %s 2 3void f (int z) { 4 while (z) { 5 default: z--; // expected-error {{statement not in switch}} 6 } 7} 8 9void foo(int X) { 10 switch (X) { 11 case 42: ; // expected-error {{previous case value}} 12 case 5000000000LL: // expected-warning {{overflow}} 13 case 42: // expected-error {{duplicate case value}} 14 ; 15 16 case 100 ... 99: ; // expected-warning {{empty case range}} 17 18 case 43: ; // expected-error {{previous case value}} 19 case 43 ... 45: ; // expected-error {{duplicate case value}} 20 21 case 100 ... 20000:; // expected-error {{previous case value}} 22 case 15000 ... 40000000:; // expected-error {{duplicate case value}} 23 } 24} 25 26void test3(void) { 27 // empty switch; 28 switch (0); 29} 30 31