[cfe-commits] r95366 - /cfe/trunk/test/Analysis/misc-ps-region-store.m
Ted Kremenek
kremenek at apple.com
Thu Feb 4 22:10:47 PST 2010
Author: kremenek
Date: Fri Feb 5 00:10:46 2010
New Revision: 95366
URL: http://llvm.org/viewvc/llvm-project?rev=95366&view=rev
Log:
Add test case showing the analyzer invalidates '__block' variables when the block is passed as an argument to an ObjC method.
Modified:
cfe/trunk/test/Analysis/misc-ps-region-store.m
Modified: cfe/trunk/test/Analysis/misc-ps-region-store.m
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Analysis/misc-ps-region-store.m?rev=95366&r1=95365&r2=95366&view=diff
==============================================================================
--- cfe/trunk/test/Analysis/misc-ps-region-store.m (original)
+++ cfe/trunk/test/Analysis/misc-ps-region-store.m Fri Feb 5 00:10:46 2010
@@ -590,6 +590,19 @@
return z;
}
+// Test that the value of 'x' is considered invalidated after the block
+// is passed as an argument to the message expression.
+typedef void (^RDar7582031CB)(void);
+ at interface RDar7582031
+- rdar7582031:RDar7582031CB;
+ at end
+
+unsigned rdar7582031(RDar7582031 *o) {
+ __block unsigned x;
+ [o rdar7582031:^{ x = 1; }];
+ return x; // no-warning
+}
+
//===----------------------------------------------------------------------===//
// <rdar://problem/7462324> - Test that variables passed using __blocks
// are not treated as being uninitialized.
More information about the cfe-commits
mailing list