Chris Lattner | 8a87e57 | 2007-07-23 17:05:23 +0000 | [diff] [blame] | 1 | // RUN: clang -parse-ast-check %s |
| 2 | |
Chris Lattner | 8a87e57 | 2007-07-23 17:05:23 +0000 | [diff] [blame] | 3 | void f (int z) { |
| 4 | while (z) { |
| 5 | default: z--; // expected-error {{statement not in switch}} |
| 6 | } |
| 7 | } |
| 8 | |
Chris Lattner | f4021e7 | 2007-08-23 05:46:52 +0000 | [diff] [blame] | 9 | void foo(int X) { |
| 10 | switch (X) { |
Chris Lattner | b2ec9d6 | 2007-08-23 06:23:56 +0000 | [diff] [blame] | 11 | case 42: ; // expected-error {{previous case value}} |
Chris Lattner | f4021e7 | 2007-08-23 05:46:52 +0000 | [diff] [blame] | 12 | case 5000000000LL: // expected-warning {{overflow}} |
Chris Lattner | b2ec9d6 | 2007-08-23 06:23:56 +0000 | [diff] [blame] | 13 | case 42: // expected-error {{duplicate case value}} |
Chris Lattner | f4021e7 | 2007-08-23 05:46:52 +0000 | [diff] [blame] | 14 | ; |
Chris Lattner | 6efc4d3 | 2007-08-23 17:48:14 +0000 | [diff] [blame^] | 15 | |
| 16 | case 100 ... 99: ; // expected-warning {{empty case range}} |
Chris Lattner | f4021e7 | 2007-08-23 05:46:52 +0000 | [diff] [blame] | 17 | } |
| 18 | } |
| 19 | |
Chris Lattner | f334850 | 2007-08-23 14:29:07 +0000 | [diff] [blame] | 20 | void test3(void) { |
| 21 | switch (0); |
| 22 | } |
| 23 | |