summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTed Kremenek <kremenek@apple.com>2009-07-20 21:00:55 +0000
committerTed Kremenek <kremenek@apple.com>2009-07-20 21:00:55 +0000
commitbf04f98c1f971c6362a26762e8c813228c4b8b43 (patch)
treeb46cececf58093957eefb5444d50cbdfdddd1438
parenta1f9c7fb3b81ef0074c2dbbc26320e5b6e7203e1 (diff)
downloadbcm5719-llvm-bf04f98c1f971c6362a26762e8c813228c4b8b43.tar.gz
bcm5719-llvm-bf04f98c1f971c6362a26762e8c813228c4b8b43.zip
Add XFAILED test.
llvm-svn: 76469
-rw-r--r--clang/test/Analysis/misc-ps.m20
1 files changed, 20 insertions, 0 deletions
diff --git a/clang/test/Analysis/misc-ps.m b/clang/test/Analysis/misc-ps.m
index 862709cc7d7..dfae22b37a6 100644
--- a/clang/test/Analysis/misc-ps.m
+++ b/clang/test/Analysis/misc-ps.m
@@ -4,6 +4,7 @@
// RUN: clang-cc -analyze -checker-cfref --analyzer-store=basic-old-cast -analyzer-constraints=range --verify -fblocks %s &&
// RUN: clang-cc -analyze -checker-cfref --analyzer-store=region -analyzer-constraints=basic --verify -fblocks %s &&
// RUN: clang-cc -analyze -checker-cfref --analyzer-store=region -analyzer-constraints=range --verify -fblocks %s
+// XFAIL
typedef struct objc_selector *SEL;
typedef signed char BOOL;
@@ -437,3 +438,22 @@ void test_block_cast() {
(void (^)(void *))test_block_cast_aux(); // expected-warning{{expression result unused}}
}
+// ** THIS TEST FAILS **
+// Test comparison of 'id' instance variable to a null void* constant after
+// performing an OSAtomicCompareAndSwap32Barrier.
+// This previously was a crash in RegionStoreManager.
+@interface TestIdNull {
+ id x;
+}
+-(int)foo;
+@end
+@implementation TestIdNull
+-(int)foo {
+ OSAtomicCompareAndSwap32Barrier(0, (signed)2, (signed*)&x);
+ if (x == (void*) 0) { return 0; }
+ return 1;
+}
+@end
+
+
+
OpenPOWER on IntegriCloud