Reid Spencer | 5f016e2 | 2007-07-11 17:01:13 +0000 | [diff] [blame] | 1 | // RUN: clang -parse-ast-check %s |
| 2 | |
| 3 | int foo(int X, int Y); |
| 4 | |
| 5 | void bar(volatile int *VP, int *P, int A, |
| 6 | _Complex double C, volatile _Complex double VC) { |
| 7 | |
Chris Lattner | 2b8bac5 | 2007-08-21 01:19:46 +0000 | [diff] [blame] | 8 | VP == P; // expected-warning {{expression result unused}} \ |
| 9 | expected-warning {{comparison}} |
Chris Lattner | 6e844ad | 2007-08-26 17:32:59 +0000 | [diff] [blame^] | 10 | (void)A; |
Reid Spencer | 5f016e2 | 2007-07-11 17:01:13 +0000 | [diff] [blame] | 11 | (void)foo(1,2); // no warning. |
| 12 | |
| 13 | A == foo(1, 2); // expected-warning {{expression result unused}} |
| 14 | |
| 15 | foo(1,2)+foo(4,3); // expected-warning {{expression result unused}} |
| 16 | |
| 17 | |
| 18 | *P; // expected-warning {{expression result unused}} |
| 19 | *VP; // no warning. |
| 20 | P[4]; // expected-warning {{expression result unused}} |
| 21 | VP[4]; // no warning. |
| 22 | |
| 23 | // FIXME: SEMA explodes on these. |
| 24 | //__real__ C; |
| 25 | //__real__ VC; |
| 26 | } |
| 27 | |
Chris Lattner | 6e844ad | 2007-08-26 17:32:59 +0000 | [diff] [blame^] | 28 | extern void t1(); |
| 29 | extern void t2(); |
| 30 | void t3(int c) { |
| 31 | c ? t1() : t2(); |
| 32 | } |
| 33 | |