[cfe-commits] r78704 - in /cfe/trunk: lib/AST/Expr.cpp test/SemaObjC/unused.m

Chris Lattner sabre at nondot.org
Tue Aug 11 13:08:03 PDT 2009


Author: lattner
Date: Tue Aug 11 15:08:03 2009
New Revision: 78704

URL: http://llvm.org/viewvc/llvm-project?rev=78704&view=rev
Log:
Fix rdar://7126285: don't warn on unused ObjC property access
that uses "dot syntax" since it might have a side effect.

Modified:
    cfe/trunk/lib/AST/Expr.cpp
    cfe/trunk/test/SemaObjC/unused.m

Modified: cfe/trunk/lib/AST/Expr.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/AST/Expr.cpp?rev=78704&r1=78703&r2=78704&view=diff

==============================================================================
--- cfe/trunk/lib/AST/Expr.cpp (original)
+++ cfe/trunk/lib/AST/Expr.cpp Tue Aug 11 15:08:03 2009
@@ -540,6 +540,7 @@
     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

Modified: cfe/trunk/test/SemaObjC/unused.m
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/SemaObjC/unused.m?rev=78704&r1=78703&r2=78704&view=diff

==============================================================================
--- cfe/trunk/test/SemaObjC/unused.m (original)
+++ cfe/trunk/test/SemaObjC/unused.m Tue Aug 11 15:08:03 2009
@@ -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
 
+
+
+
+ at interface NSObject @end
+ at interface NSString : NSObject 
+- (int)length;
+ at end
+
+void test() {
+  // No unused warning: rdar://7126285
+  @"pointless example call for test purposes".length;
+}
+
+
+
 int main (void) {
     [Greeter hello];
     return 0;





More information about the cfe-commits mailing list