diff options
| author | Chris Lattner <sabre@nondot.org> | 2009-08-11 20:08:03 +0000 | 
|---|---|---|
| committer | Chris Lattner <sabre@nondot.org> | 2009-08-11 20:08:03 +0000 | 
| commit | f1c9797ffa37a5793dd3740c26005c45e2be9b7f (patch) | |
| tree | 3e9ef82f7181dae00fe29cbdb94ec9c1c3f59aae /clang | |
| parent | f9d12f23cb822fa4997b7f7f791ef95103362821 (diff) | |
| download | bcm5719-llvm-f1c9797ffa37a5793dd3740c26005c45e2be9b7f.tar.gz bcm5719-llvm-f1c9797ffa37a5793dd3740c26005c45e2be9b7f.zip  | |
Fix rdar://7126285: don't warn on unused ObjC property access
that uses "dot syntax" since it might have a side effect.
llvm-svn: 78704
Diffstat (limited to 'clang')
| -rw-r--r-- | clang/lib/AST/Expr.cpp | 1 | ||||
| -rw-r--r-- | clang/test/SemaObjC/unused.m | 17 | 
2 files changed, 17 insertions, 1 deletions
diff --git a/clang/lib/AST/Expr.cpp b/clang/lib/AST/Expr.cpp index ce8bb516c09..6aa971112d5 100644 --- a/clang/lib/AST/Expr.cpp +++ b/clang/lib/AST/Expr.cpp @@ -540,6 +540,7 @@ bool Expr::isUnusedResultAWarning(SourceLocation &Loc, SourceRange &R1,      return false;    }    case ObjCMessageExprClass: +  case ObjCKVCRefExprClass:   // Dot syntax for message send.      return false;    case StmtExprClass: {      // Statement exprs don't logically have side effects themselves, but are diff --git a/clang/test/SemaObjC/unused.m b/clang/test/SemaObjC/unused.m index 88c6f1054c8..d4660cdc009 100644 --- a/clang/test/SemaObjC/unused.m +++ b/clang/test/SemaObjC/unused.m @@ -1,4 +1,4 @@ -// RUN: clang-cc %s -verify -fsyntax-only +// RUN: clang-cc %s -verify -Wunused -fsyntax-only  #include <stdio.h>  @interface Greeter @@ -11,6 +11,21 @@  }  @end + + + +@interface NSObject @end +@interface NSString : NSObject  +- (int)length; +@end + +void test() { +  // No unused warning: rdar://7126285 +  @"pointless example call for test purposes".length; +} + + +  int main (void) {      [Greeter hello];      return 0;  | 

