Chris Lattner | ab0e887 | 2009-08-11 20:08:03 +0000 | [diff] [blame] | 1 | // RUN: clang-cc %s -verify -Wunused -fsyntax-only |
Daniel Dunbar | 23afaad | 2009-11-17 08:57:36 +0000 | [diff] [blame] | 2 | |
| 3 | int printf(const char *, ...); |
Chris Lattner | a9c0102 | 2007-09-26 22:06:30 +0000 | [diff] [blame] | 4 | |
| 5 | @interface Greeter |
| 6 | + (void) hello; |
| 7 | @end |
| 8 | |
| 9 | @implementation Greeter |
| 10 | + (void) hello { |
Daniel Dunbar | 23afaad | 2009-11-17 08:57:36 +0000 | [diff] [blame] | 11 | printf("Hello, World!\n"); |
Chris Lattner | a9c0102 | 2007-09-26 22:06:30 +0000 | [diff] [blame] | 12 | } |
| 13 | @end |
| 14 | |
Chris Lattner | ab0e887 | 2009-08-11 20:08:03 +0000 | [diff] [blame] | 15 | |
Chris Lattner | bab8a8e | 2009-08-11 20:08:52 +0000 | [diff] [blame] | 16 | int test1(void) { |
| 17 | [Greeter hello]; |
| 18 | return 0; |
| 19 | } |
| 20 | |
Chris Lattner | ab0e887 | 2009-08-11 20:08:03 +0000 | [diff] [blame] | 21 | |
| 22 | |
| 23 | @interface NSObject @end |
| 24 | @interface NSString : NSObject |
| 25 | - (int)length; |
| 26 | @end |
| 27 | |
Chris Lattner | bab8a8e | 2009-08-11 20:08:52 +0000 | [diff] [blame] | 28 | void test2() { |
Chris Lattner | 419cfb3 | 2009-08-16 16:57:27 +0000 | [diff] [blame] | 29 | @"pointless example call for test purposes".length; // expected-warning {{property access result unused - getters should not have side effects}} |
Chris Lattner | ab0e887 | 2009-08-11 20:08:03 +0000 | [diff] [blame] | 30 | } |
| 31 | |
| 32 | |
| 33 | |
Chris Lattner | a9c0102 | 2007-09-26 22:06:30 +0000 | [diff] [blame] | 34 | |
Chris Lattner | bab8a8e | 2009-08-11 20:08:52 +0000 | [diff] [blame] | 35 | |
| 36 | @interface foo |
| 37 | - (int)meth: (int)x: (int)y: (int)z ; |
| 38 | @end |
| 39 | |
| 40 | @implementation foo |
| 41 | - (int) meth: (int)x: |
| 42 | (int)y: // expected-warning{{unused}} |
| 43 | (int) __attribute__((unused))z { return x; } |
| 44 | @end |