]> granicus.if.org Git - clang/commitdiff
Make 'BasicStoreManager' + 'NewCastRegion' testable from the command line using ...
authorTed Kremenek <kremenek@apple.com>
Mon, 6 Jul 2009 21:58:46 +0000 (21:58 +0000)
committerTed Kremenek <kremenek@apple.com>
Mon, 6 Jul 2009 21:58:46 +0000 (21:58 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74865 91177308-0d34-0410-b5e6-96231b3b80d8

55 files changed:
include/clang/Analysis/PathSensitive/Store.h
include/clang/Frontend/Analyses.def
lib/Analysis/BasicStore.cpp
test/Analysis/CFDateGC.m
test/Analysis/CFNumber.c
test/Analysis/CFRetainRelease_NSAssertionHandler.m
test/Analysis/CGColorSpace.c
test/Analysis/CheckNSError.m
test/Analysis/NSPanel.m
test/Analysis/NSString.m
test/Analysis/NSWindow.m
test/Analysis/NoReturn.m
test/Analysis/ObjCProperties.m
test/Analysis/PR2599.m
test/Analysis/PR3991.m
test/Analysis/array-struct.c
test/Analysis/basicstore_wine_crash.c
test/Analysis/casts.m
test/Analysis/cfref_PR2519.c
test/Analysis/cfref_rdar6080742.c
test/Analysis/complex.c
test/Analysis/concrete-address.c
test/Analysis/dead-stores.c
test/Analysis/delegates.m
test/Analysis/exercise-ps.c
test/Analysis/fields.c
test/Analysis/func.c
test/Analysis/misc-ps-64.m
test/Analysis/misc-ps-basic-store.m
test/Analysis/misc-ps-ranges.m
test/Analysis/misc-ps.m
test/Analysis/nil-receiver-undefined-larger-than-voidptr-ret.m
test/Analysis/no-exit-cfg.c
test/Analysis/no-outofbounds-basicstore.c
test/Analysis/null-deref-ps.c
test/Analysis/override-werror.c
test/Analysis/pr4209.m
test/Analysis/pr_2542_rdar_6793404.m
test/Analysis/pr_4164.c
test/Analysis/rdar-6442306-1.m
test/Analysis/rdar-6539791.c
test/Analysis/rdar-6541136.c
test/Analysis/rdar-6562655.m
test/Analysis/rdar-6582778-basic-store.c
test/Analysis/rdar-6600344-nil-receiver-undefined-struct-ret.m
test/Analysis/refcnt_naming.m
test/Analysis/region-1.m
test/Analysis/retain-release-basic-store.m
test/Analysis/retain-release-gc-only.m
test/Analysis/retain-release.m
test/Analysis/stack-addr-ps.c
test/Analysis/uninit-msg-expr.m
test/Analysis/uninit-ps-rdar6145427.m
test/Analysis/uninit-vals-ps.c
test/Analysis/uninit-vals.m

index 44f13b37d9198acfdbb3b25132524dbdb9665c45..35be4c0d93e167133b5e8543b241ef7a13b69a08 100644 (file)
@@ -219,6 +219,7 @@ public:
 
 // FIXME: Do we need to pass GRStateManager anymore?
 StoreManager *CreateBasicStoreManager(GRStateManager& StMgr);
+StoreManager *CreateBasicStoreNewCastManager(GRStateManager& StMgr);
 StoreManager *CreateRegionStoreManager(GRStateManager& StMgr);
 StoreManager *CreateFieldsOnlyRegionStoreManager(GRStateManager& StMgr);
 
index ad799c3a8b25b7d6ded35f93c998cd536472ce0c..47466a0e65bf199aaa5f463b01d1e022cccf9beb 100644 (file)
@@ -49,6 +49,7 @@ ANALYSIS(CheckerCFRef, "checker-cfref",
 #endif
 
 ANALYSIS_STORE(BasicStore, "basic", "Use basic analyzer store", CreateBasicStoreManager)
+ANALYSIS_STORE(BasicStoreNewCast, "basic-new-cast", "Use basic analyzer store with new CastRegion", CreateBasicStoreNewCastManager)
 ANALYSIS_STORE(RegionStore, "region", "Use region-based analyzer store", CreateRegionStoreManager)
 
 #ifndef ANALYSIS_CONSTRAINTS
index 19d641ee9753a4ab1520b0888be46a3bb082d571..c897b2f3fcc7d9b291fe52dcceced7ced0f2e86c 100644 (file)
@@ -38,8 +38,8 @@ class VISIBILITY_HIDDEN BasicStoreManager : public StoreManager {
   const MemRegion* SelfRegion;
   
 public:
-  BasicStoreManager(GRStateManager& mgr)
-    : StoreManager(mgr),
+  BasicStoreManager(GRStateManager& mgr, bool useNewCastRegion = false)
+    : StoreManager(mgr, useNewCastRegion),
       VBFactory(mgr.getAllocator()), 
       SelfRegion(0) {}
   
@@ -126,6 +126,10 @@ StoreManager* clang::CreateBasicStoreManager(GRStateManager& StMgr) {
   return new BasicStoreManager(StMgr);
 }
 
+StoreManager* clang::CreateBasicStoreNewCastManager(GRStateManager& StMgr) {
+  return new BasicStoreManager(StMgr, true);
+}
+
 SVal BasicStoreManager::getLValueVar(const GRState *state, const VarDecl* VD) {
   return ValMgr.makeLoc(MRMgr.getVarRegion(VD));
 }
index dfc736627bfca954493f28eabf336e0f8144d650..ff7978283c673645558556e9f5c0f2cee632cb72 100644 (file)
@@ -1,6 +1,9 @@
-// RUN: clang-cc -analyze -checker-cfref -verify -fobjc-gc -analyzer-constraints=basic %s &&
-// RUN: clang-cc -analyze -checker-cfref -verify -fobjc-gc -analyzer-constraints=range %s &&
-// RUN: clang-cc -analyze -checker-cfref -verify -fobjc-gc -disable-free %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -verify -fobjc-gc -analyzer-constraints=basic %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -verify -fobjc-gc -analyzer-constraints=basic %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -verify -fobjc-gc -analyzer-constraints=range %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -verify -fobjc-gc -analyzer-constraints=range %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -verify -fobjc-gc -disable-free %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -verify -fobjc-gc -disable-free %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -analyzer-constraints=basic -verify -fobjc-gc %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -analyzer-constraints=range -verify -fobjc-gc %s
 
index f62d2ab569d49ce47d8dab1ea67ad64969bd3336..c740abf82e8fd539bc6b67232817edc60f58eae8 100644 (file)
@@ -1,5 +1,7 @@
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -analyzer-constraints=basic -verify -triple x86_64-apple-darwin9 %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -analyzer-constraints=basic -verify -triple x86_64-apple-darwin9 %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -analyzer-constraints=range -verify -triple x86_64-apple-darwin9 %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -analyzer-constraints=range -verify -triple x86_64-apple-darwin9 %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -analyzer-constraints=basic -verify -triple x86_64-apple-darwin9 %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -analyzer-constraints=range -verify -triple x86_64-apple-darwin9 %s
 
index 1ff950725c024ed462fdd9f87c8e2646c89ad0eb..419dfc5a1ee4e38abe8e9d937479cc7e864d3ce1 100644 (file)
@@ -1,5 +1,7 @@
 // RUN: clang-cc -analyze -checker-cfref -verify %s -analyzer-constraints=basic -analyzer-store=basic &&
+// RUN: clang-cc -analyze -checker-cfref -verify %s -analyzer-constraints=basic -analyzer-store=basic-new-cast &&
 // RUN: clang-cc -analyze -checker-cfref -verify %s -analyzer-constraints=range -analyzer-store=basic &&
+// RUN: clang-cc -analyze -checker-cfref -verify %s -analyzer-constraints=range -analyzer-store=basic-new-cast &&
 // RUN: clang-cc -analyze -checker-cfref -verify %s -analyzer-constraints=basic -analyzer-store=region &&
 // RUN: clang-cc -analyze -checker-cfref -verify %s -analyzer-constraints=range -analyzer-store=region
 
index 2887d47c51183000188e3f5d0ea6ae390cfd35b2..ca3003ba8912e22e5d010bed8bb8147c4431aa9a 100644 (file)
@@ -1,5 +1,7 @@
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -analyzer-constraints=basic -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -analyzer-constraints=basic -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -analyzer-constraints=range -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -analyzer-constraints=range -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -analyzer-constraints=basic -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -analyzer-constraints=range -verify %s
 
index 779b865aff8cb077f28ae1cca40b780a6266e2c6..d55f5eb77f2769b8c664bd6ec4d1f553d3116407 100644 (file)
@@ -1,6 +1,8 @@
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -analyzer-constraints=basic -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -analyzer-constraints=basic -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -analyzer-constraints=basic -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -analyzer-constraints=range -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -analyzer-constraints=range -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -analyzer-constraints=range -verify %s
 
 
index c4d4c22540f2e59a43f4b0996f4f052fcba9a580..4e02259e806f61526f89ddfe05e9ca10450643e9 100644 (file)
@@ -1,5 +1,7 @@
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -analyzer-constraints=basic -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -analyzer-constraints=basic -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -analyzer-constraints=range -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -analyzer-constraints=range -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -analyzer-constraints=basic -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -analyzer-constraints=range -verify %s
 
index b707071990f858ad5ed62421ef1cf6f9c02b6cc9..24009ddeccd7c5b226b5e14766b929987a2cd160 100644 (file)
@@ -1,5 +1,7 @@
 // RUN: clang-cc -triple i386-pc-linux-gnu -analyze -checker-cfref -analyzer-store=basic -analyzer-constraints=basic -verify %s &&
-// RUN: clang-cc -triple i386-pc-linux-gnu -analyze -checker-cfref -analyzer-store=basic -analyzer-constraints=range -verify %s
+// RUN: clang-cc -triple i386-pc-linux-gnu -analyze -checker-cfref -analyzer-store=basic-new-cast -analyzer-constraints=basic -verify %s &&
+// RUN: clang-cc -triple i386-pc-linux-gnu -analyze -checker-cfref -analyzer-store=basic -analyzer-constraints=range -verify %s &&
+// RUN: clang-cc -triple i386-pc-linux-gnu -analyze -checker-cfref -analyzer-store=basic-new-cast -analyzer-constraints=range -verify %s
 
 
 // NOTWORK: clang-cc -triple i386-pc-linux-gnu -analyze -checker-cfref -analyzer-store=region -analyzer-constraints=basic -verify %s &&
index 9609c5260f53796bac97e6d38b58d5c088f13f66..621151e0410d8b6f82fea8f502b4c69b32eacddc 100644 (file)
@@ -1,5 +1,7 @@
 // RUN: clang-cc -analyze -checker-cfref -warn-dead-stores -analyzer-store=basic -analyzer-constraints=basic -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -warn-dead-stores -analyzer-store=basic-new-cast -analyzer-constraints=basic -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -warn-dead-stores -analyzer-store=basic -analyzer-constraints=range -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -warn-dead-stores -analyzer-store=basic-new-cast -analyzer-constraints=range -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -warn-dead-stores -analyzer-store=region -analyzer-constraints=basic -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -warn-dead-stores -analyzer-store=region -analyzer-constraints=range -verify %s
 
index 5f5ce281a794172b5dfb4e2c40e1d994563e1734..802fc6eb5bc2e27f567fde341ddebafe61993d41 100644 (file)
@@ -1,5 +1,7 @@
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -analyzer-constraints=basic -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -analyzer-constraints=basic -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -analyzer-constraints=range -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -analyzer-constraints=range -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -analyzer-constraints=basic -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -analyzer-constraints=range -verify %s
 
index 3ad256914a422489749d5af52c170cd3813cc411..d26ebf3940b20c13a325fc28f493999144d6a86a 100644 (file)
@@ -1,5 +1,7 @@
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -analyzer-constraints=basic %s -verify &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -analyzer-constraints=basic %s -verify &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -analyzer-constraints=range %s -verify &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -analyzer-constraints=range %s -verify &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -analyzer-constraints=basic %s -verify &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -analyzer-constraints=range %s -verify
 
index 098bfe8e8539842677837dcc6ee7410d66c96645..e3fbfa67596a693b550c159fbdce023137a602c9 100644 (file)
@@ -1,6 +1,9 @@
 // RUN: clang-cc -analyze -analyzer-constraints=basic -analyzer-store=basic -checker-cfref -fobjc-gc -verify %s &&
+// RUN: clang-cc -analyze -analyzer-constraints=basic -analyzer-store=basic-new-cast -checker-cfref -fobjc-gc -verify %s &&
 // RUN: clang-cc -analyze -analyzer-constraints=range -analyzer-store=basic -checker-cfref -fobjc-gc -verify %s &&
+// RUN: clang-cc -analyze -analyzer-constraints=range -analyzer-store=basic-new-cast -checker-cfref -fobjc-gc -verify %s &&
 // RUN: clang-cc -analyze -analyzer-constraints=basic -analyzer-store=basic -checker-cfref -fobjc-gc -verify %s &&
+// RUN: clang-cc -analyze -analyzer-constraints=basic -analyzer-store=basic-new-cast -checker-cfref -fobjc-gc -verify %s &&
 // RUN: clang-cc -analyze -analyzer-constraints=range -analyzer-store=region -checker-cfref -fobjc-gc -verify %s
 
 typedef const void * CFTypeRef;
index 20d4b5b960594b579592f58aa981e3ece3abb0ce..e9a9d547d8c44f2392038988a2fc157e55c9c63a 100644 (file)
@@ -1,5 +1,7 @@
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -analyzer-constraints=basic -verify -triple x86_64-apple-darwin9 %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -analyzer-constraints=basic -verify -triple x86_64-apple-darwin9 %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -analyzer-constraints=range -verify -triple x86_64-apple-darwin9 %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -analyzer-constraints=range -verify -triple x86_64-apple-darwin9 %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -analyzer-constraints=basic -verify -triple x86_64-apple-darwin9 %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -analyzer-constraints=range -verify -triple x86_64-apple-darwin9 %s
 
index da7df4b28e3030205015564572f2bd5adbd3bb1d..07abbcafd32c46d43bc0db1b14405573b7a84fbc 100644 (file)
@@ -1,5 +1,7 @@
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -analyzer-constraints=basic -verify %s &&
-// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -analyzer-constraints=range -verify %s
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -analyzer-constraints=basic -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -analyzer-constraints=range -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -analyzer-constraints=range -verify %s
 
 // RegionStore now has an infinite recursion with this test case.
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -analyzer-constraints=basic -verify %s &&
index cb5fac8d2919e0a254d2256ae766ad33e75fdc32..8692f2d50d68ec567d835c4d71c1b0c744905d92 100644 (file)
@@ -1,4 +1,5 @@
-// RUN: clang-cc -checker-cfref -analyze -analyzer-store=basic %s
+// RUN: clang-cc -checker-cfref -analyze -analyzer-store=basic %s &&
+// RUN: clang-cc -checker-cfref -analyze -analyzer-store=basic-new-cast %s
 
 // Once xfail_regionstore_wine_crash.c passes, move this test case
 // into misc-ps.m.
index 82c29fac904f330ae510eb22b8795e5decab2ade..f435d64923e3715b7f545c4dbf7f3cb8b94edf1b 100644 (file)
@@ -1,4 +1,5 @@
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic --verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast --verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region --verify %s
 
 // Test function pointer casts.  Currently we track function addresses using
index 695123b533458450da5af8b1379d71600e5d238d..fdd174a29407ce0c198b422084950424c1d8ff2b 100644 (file)
@@ -1,5 +1,7 @@
 // RUN: clang-cc -analyze -checker-cfref --analyzer-store=basic -analyzer-constraints=basic -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref --analyzer-store=basic-new-cast -analyzer-constraints=basic -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref --analyzer-store=basic -analyzer-constraints=range -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref --analyzer-store=basic-new-cast -analyzer-constraints=range -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref --analyzer-store=region -analyzer-constraints=basic -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref --analyzer-store=region -analyzer-constraints=range -verify %s
 
index 5d957615d0dd2ca272601aba54873ef507d405ea..a6567c0224395b11052b257e45ec75d232a5a4d0 100644 (file)
@@ -1,5 +1,7 @@
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -analyzer-constraints=basic -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -analyzer-constraints=basic -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -analyzer-constraints=range -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -analyzer-constraints=range -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -analyzer-constraints=basic -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -analyzer-constraints=range -verify %s
 
index cef624577a6dcbca74324f21d8720807b35ad7d0..dd5e09a3617a2c6d9e2975ba2e881da3ed1aa318 100644 (file)
@@ -1,5 +1,7 @@
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -analyzer-constraints=basic -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -analyzer-constraints=basic -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -analyzer-constraints=range -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -analyzer-constraints=range -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -analyzer-constraints=basic -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -analyzer-constraints=range -verify %s
 
index 84ebb21805a2e0aca0d8abc7ce72a07b1a3e35dd..acc5e55ee6914f6e7d0b4da9c8c02aabad9ae3fa 100644 (file)
@@ -1,4 +1,5 @@
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic --verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast --verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region --verify %s
 
 void foo() {
index 6d3b7e6f540d7f4b53e3fd32880cd8666a4458c4..d7e9f5cb0c77e61fe75dc3270ada9e89fce1d9b2 100644 (file)
@@ -1,6 +1,8 @@
 // RUN: clang-cc -analyze -warn-dead-stores -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -analyzer-constraints=basic -warn-dead-stores -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -analyzer-constraints=basic -warn-dead-stores -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -analyzer-constraints=range -warn-dead-stores -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -analyzer-constraints=range -warn-dead-stores -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -analyzer-constraints=basic -warn-dead-stores -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -analyzer-constraints=range -warn-dead-stores -verify %s
 
index 440f31113cff0165809b39026aa3accb05349385..30f7d81653641e2333f6d650ba6d083c1b39c505 100644 (file)
@@ -1,4 +1,5 @@
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -verify %s
 
 
index c309349ab3a9e53baf7d557e13494774cfbcd44d..a36b8e6e036925455ee6383a8cdb5a0694da878f 100644 (file)
@@ -1,4 +1,5 @@
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -verify %s
 //
 // Just exercise the analyzer on code that has at one point caused issues
index 900a6d6869acc8dcd5db4fee006a59fde4228765..a180e257bcdcf05c0be88a07872ebada3333676c 100644 (file)
@@ -1,4 +1,5 @@
 // RUN: clang-cc -analyze -checker-cfref %s --analyzer-store=basic -verify &&
+// RUN: clang-cc -analyze -checker-cfref %s --analyzer-store=basic-new-cast -verify &&
 // RUN: clang-cc -analyze -checker-cfref %s --analyzer-store=region -verify
 
 unsigned foo();
index 2b4e7b0db0762212dd59e8602e035ea56aafc63b..e2471db0dac56b91516e8fa2832ddfe8049c6534 100644 (file)
@@ -1,4 +1,5 @@
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -verify %s
 
 void f(void) {
index 163da4b4abeb96bc255395abb81dd823a1f5eba9..faa786977091f9d1057505b10515777c831b3d01 100644 (file)
@@ -1,5 +1,7 @@
 // RUN: clang-cc -triple x86_64-apple-darwin9 -analyze -checker-cfref --analyzer-store=basic -analyzer-constraints=basic --verify -fblocks %s &&
+// RUN: clang-cc -triple x86_64-apple-darwin9 -analyze -checker-cfref --analyzer-store=basic-new-cast -analyzer-constraints=basic --verify -fblocks %s &&
 // RUN: clang-cc -triple x86_64-apple-darwin9 -analyze -checker-cfref --analyzer-store=basic -analyzer-constraints=range --verify -fblocks %s &&
+// RUN: clang-cc -triple x86_64-apple-darwin9 -analyze -checker-cfref --analyzer-store=basic-new-cast -analyzer-constraints=range --verify -fblocks %s &&
 // RUN: clang-cc -triple x86_64-apple-darwin9 -analyze -checker-cfref --analyzer-store=region -analyzer-constraints=basic --verify -fblocks %s &&
 // RUN: clang-cc -triple x86_64-apple-darwin9 -analyze -checker-cfref --analyzer-store=region -analyzer-constraints=range --verify -fblocks %s
 
index 1207f8663e90a76818a8af0a3cc607c8ed0a517d..20fb3c8fea302aac493243b63b26b54aa4abf583 100644 (file)
@@ -1,4 +1,5 @@
-// RUN: clang-cc -analyze -checker-cfref --analyzer-store=basic --verify -fblocks %s
+// RUN: clang-cc -analyze -checker-cfref --analyzer-store=basic --verify -fblocks %s &&
+// RUN: clang-cc -analyze -checker-cfref --analyzer-store=basic-new-cast --verify -fblocks %s
 
 //---------------------------------------------------------------------------
 // Test case 'checkaccess_union' differs for region store and basic store.
index a191bec3cfb1bd9af9ff0c4b620357cc29491620..1df7ef06f9ff4fd30664cffbe38ad51cb4b97b01 100644 (file)
@@ -1,4 +1,5 @@
 // RUN: clang-cc -analyze -checker-cfref --analyzer-store=basic -analyzer-constraints=range --verify -fblocks %s &&
+// RUN: clang-cc -analyze -checker-cfref --analyzer-store=basic-new-cast -analyzer-constraints=range --verify -fblocks %s &&
 // RUN: clang-cc -analyze -checker-cfref --analyzer-store=region -analyzer-constraints=range --verify -fblocks %s
 
 // <rdar://problem/6776949>
index ea41b5bb2f35f4e506a2f1482235ef97d220d0b8..025d74cccb4ad0f2dddd845f55f3459658a3d398 100644 (file)
@@ -1,5 +1,7 @@
 // RUN: clang-cc -analyze -checker-cfref --analyzer-store=basic -analyzer-constraints=basic --verify -fblocks %s &&
+// RUN: clang-cc -analyze -checker-cfref --analyzer-store=basic-new-cast -analyzer-constraints=basic --verify -fblocks %s &&
 // RUN: clang-cc -analyze -checker-cfref --analyzer-store=basic -analyzer-constraints=range --verify -fblocks %s &&
+// RUN: clang-cc -analyze -checker-cfref --analyzer-store=basic-new-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
 
index 9a64b3001e16f91e123a9102baf1f091c3fa9486..6ff3c14948c09a4e767f4343e4b27e10602002fa 100644 (file)
@@ -1,4 +1,5 @@
-// RUN: clang-cc -triple i386-apple-darwin9 -analyze -checker-cfref -analyzer-constraints=basic -analyzer-store=basic %s -verify
+// RUN: clang-cc -triple i386-apple-darwin9 -analyze -checker-cfref -analyzer-constraints=basic -analyzer-store=basic %s -verify &&
+// RUN: clang-cc -triple i386-apple-darwin9 -analyze -checker-cfref -analyzer-constraints=basic -analyzer-store=basic-new-cast %s -verify
 
 @interface MyClass {}
 - (void *)voidPtrM;
index cad2127b208265fe3a3f791152369bfd84cc6fd6..fe090ccf8cdbc2c62e07e61f8cb2a0932df3ae9e 100644 (file)
@@ -1,4 +1,5 @@
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -verify %s 
 
 // This is a test case for the issue reported in PR 2819:
index 9a0b35906d7cf056f57e3be1ae2ad23c9ec1f637..0df6f0428e33959de57b3b341ec941c171312371 100644 (file)
@@ -1,4 +1,5 @@
-// RUN: clang-cc -checker-cfref -analyze -analyzer-store=basic -verify %s
+// RUN: clang-cc -checker-cfref -analyze -analyzer-store=basic -verify %s &&
+// RUN: clang-cc -checker-cfref -analyze -analyzer-store=basic-new-cast -verify %s
 
 void f() {
   long x = 0;
index 6e2074146c30796c91f39b10964d741bf865b98f..b6609e13748e0618062fe99a90699e3fe5cd2865 100644 (file)
@@ -1,5 +1,7 @@
 // RUN: clang-cc -analyze -std=gnu99 -checker-cfref -verify %s -analyzer-constraints=basic -analyzer-store=basic &&
+// RUN: clang-cc -analyze -std=gnu99 -checker-cfref -verify %s -analyzer-constraints=basic -analyzer-store=basic-new-cast &&
 // RUN: clang-cc -analyze -std=gnu99 -checker-cfref -verify %s -analyzer-constraints=range -analyzer-store=basic &&
+// RUN: clang-cc -analyze -std=gnu99 -checker-cfref -verify %s -analyzer-constraints=range -analyzer-store=basic-new-cast &&
 // RUN: clang-cc -analyze -std=gnu99 -checker-cfref -analyzer-store=region -analyzer-constraints=range -analyzer-purge-dead=false -verify %s &&
 // RUN: clang-cc -analyze -std=gnu99 -checker-cfref -analyzer-store=region -analyzer-constraints=range -verify %s
 
index f928ee031fe3cd55304cfb4d2775b8c9b21361a2..899ea17793d06a72ce2dc8a6549d20c79ba4a400 100644 (file)
@@ -1,4 +1,5 @@
 // RUN: clang-cc -analyze -checker-cfref -Werror %s -analyzer-store=basic -verify &&
+// RUN: clang-cc -analyze -checker-cfref -Werror %s -analyzer-store=basic-new-cast -verify &&
 // RUN: clang-cc -analyze -checker-cfref -Werror %s -analyzer-store=region -verify
 
 // This test case illustrates that using '-analyze' overrides the effect of
index 7d7d8fc5a1571a345b5474e02cdd1bb421dc1d86..c4e218e643aec9a5c5f4743f6183f7ed4d5cdf68 100644 (file)
@@ -1,4 +1,5 @@
-// RUN: clang-cc -triple i386-apple-darwin9 -analyze -checker-cfref -verify %s &&
+// RUN: clang-cc -triple i386-apple-darwin9 -analyze -checker-cfref -analyzer-store=basic -verify %s &&
+// RUN: clang-cc -triple i386-apple-darwin9 -analyze -checker-cfref -analyzer-store=basic-new-cast -verify %s &&
 // RUN: clang-cc -triple i386-apple-darwin9 -analyze -checker-cfref -analyzer-store=region -verify %s
 
 // This test case was crashing due to how CFRefCount.cpp resolved the
index 82a028d652d1747b37bd3288ecf71eda2cb81bf0..70ce1dd7bd173bc68e13885bcfab148689af1fb8 100644 (file)
@@ -1,4 +1,5 @@
 // RUN: clang-cc -analyze -checker-cfref -pedantic -analyzer-store=basic -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -pedantic -analyzer-store=basic-new-cast -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -pedantic -analyzer-store=region -verify %s
 
 // BEGIN delta-debugging reduced header stuff
index cc2479c3e49cee43a86f9a2b048598ea3098373f..5385f1bd13965a67489056f2676c902ceed1caa5 100644 (file)
@@ -1,4 +1,5 @@
 // RUN: clang-cc -triple x86_64-apple-darwin9 -analyze -checker-cfref -analyzer-store=basic -verify %s &&
+// RUN: clang-cc -triple x86_64-apple-darwin9 -analyze -checker-cfref -analyzer-store=basic-new-cast -verify %s &&
 // RUN: clang-cc -triple x86_64-apple-darwin9 -analyze -checker-cfref -analyzer-store=region -verify %s
 
 // PR 4164: http://llvm.org/bugs/show_bug.cgi?id=4164
index 15d3498840930d180c64fd187d353a1d7b8490ef..0c0923d71b5e96130d59b77502ff9ca5f70deb29 100644 (file)
@@ -1,4 +1,5 @@
 // RUN: clang-cc -analyze -checker-cfref %s --analyzer-store=basic -verify &&
+// RUN: clang-cc -analyze -checker-cfref %s --analyzer-store=basic-new-cast -verify &&
 // RUN: clang-cc -analyze -checker-cfref %s --analyzer-store=region -verify
 
 typedef int bar_return_t;
index c1c989154337f0d669700d6b92afbef7128677c6..bf70e6cc789892d1ac507d61f5713c39f0f884d1 100644 (file)
@@ -1,4 +1,5 @@
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -verify %s
 
 typedef const struct __CFAllocator * CFAllocatorRef;
index 6e6a479136b98231864d90b59a64126c4aa4287f..61c7756bb3263c16bf587f2ea084a05441e8b0c1 100644 (file)
@@ -1,4 +1,5 @@
-// RUN: clang-cc -verify -analyze -checker-cfref -analyzer-store=basic %s
+// RUN: clang-cc -verify -analyze -checker-cfref -analyzer-store=basic %s &&
+// RUN: clang-cc -verify -analyze -checker-cfref -analyzer-store=basic-new-cast %s
 
 struct tea_cheese { unsigned magic; };
 typedef struct tea_cheese kernel_tea_cheese_t;
index 581d6eacf0857504dd9a143f2744e31edc34e244..65afb1b51568d0415cf5f328cc2e1e18cf7e20c1 100644 (file)
@@ -1,4 +1,5 @@
-// RUN: clang-cc -analyze -checker-cfref -analyzer-constraints=basic -analyzer-store=basic -verify %s
+// RUN: clang-cc -analyze -checker-cfref -analyzer-constraints=basic -analyzer-store=basic -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-constraints=basic -analyzer-store=basic-new-cast -verify %s
 //
 // This test case mainly checks that the retain/release checker doesn't crash
 // on this file.
index 9ec38ef7a5f095184f4ea55fd60a1d72f03b1db2..14034530b7f402444e3244338fe263742796c507 100644 (file)
@@ -1,4 +1,5 @@
-// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -verify %s
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -verify %s
 
 typedef const void * CFTypeRef;
 typedef double CFTimeInterval;
index 5d1fa37c46a845b7ecb22d2e63dd397631b456c2..9075ad4c7bdd27b1697ff9ce03b0f461e03d77a4 100644 (file)
@@ -1,4 +1,5 @@
-// RUN: clang-cc -analyze -checker-cfref -analyzer-constraints=basic -analyzer-store=basic %s -verify
+// RUN: clang-cc -analyze -checker-cfref -analyzer-constraints=basic -analyzer-store=basic %s -verify &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-constraints=basic -analyzer-store=basic-new-cast %s -verify
 
 typedef struct Foo { int x; } Bar;
 
index bea404799ba3474945eb715fe82a3b5a63e58943..e2e4fd0724dd8dc7ad7a23ef19a3950018e63dfe 100644 (file)
@@ -1,4 +1,5 @@
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -verify %s
 
 typedef const struct __CFString * CFStringRef;
index ed172e431e994295ccbe00f2cccd8711c5912d38..1924bc31a65a1ef2259c8167cff8bdba65b7d0e6 100644 (file)
@@ -1,4 +1,5 @@
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -verify %s
 //
 // This test case simply should not crash.  It evaluates the logic of not
index b16c231ce23b147b1978e3c593395f587c2d8978..15ae0c9aaa6c6e6e8ba35f4e3f018e4bb49b3651 100644 (file)
@@ -1,4 +1,5 @@
-// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -verify %s
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -verify %s
 
 //===----------------------------------------------------------------------===//
 // The following code is reduced using delta-debugging from
index ec33a57d3303df96c2ebead1a4ad7bd97e770e58..f22e1f368b034d2e6a8269254ab2a28d0e0ddc13 100644 (file)
@@ -1,4 +1,5 @@
-// RUN: clang-cc -analyze -checker-cfref -verify -fobjc-gc-only %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -verify -fobjc-gc-only %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -verify -fobjc-gc-only %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -fobjc-gc-only -verify %s
 
 //===----------------------------------------------------------------------===//
index 63470146bb461445e571a4b9e0313d6874d9082d..45a0cc24838ce3343324a88d1aa4ce783b60f19b 100644 (file)
@@ -1,5 +1,6 @@
 //>>SLICER
-// RUN: clang-cc -analyze -checker-cfref -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -verify %s
 
 //===----------------------------------------------------------------------===//
index 0d7a70373c9a5edcc4ae5c7d8009485b6e288fea..8340eaafed66fdb4b63b8dc6219485ecf5c8842a 100644 (file)
@@ -1,4 +1,5 @@
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -verify %s
 
 #include <stdlib.h>
index 5ec878ea3c37fc22b79b07d07ba37ea6e0b9b1db..dca6ea09d0e73f49d252bd05002d0e9f6d80c2d6 100644 (file)
@@ -1,4 +1,5 @@
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -verify %s
 
 //===----------------------------------------------------------------------===//
index 49eb26984a0ba6dd9e32de9f6346ff65b2872cbf..e57dcc0a9729c4427dfc7ec87ff46bd533d06ec7 100644 (file)
@@ -1,4 +1,5 @@
 // RUN: clang-cc -analyze -verify -analyzer-store=basic -checker-cfref %s &&
+// RUN: clang-cc -analyze -verify -analyzer-store=basic-new-cast -checker-cfref %s &&
 // RUN: clang-cc -analyze -verify -analyzer-store=region -checker-cfref %s
 
 // Delta-Debugging reduced preamble.
index 41771265367aef561f4ba0d9966cd9ec07d45b47..8c742403990d06c074105596986126f4f12409ee 100644 (file)
@@ -1,4 +1,5 @@
-// RUN: clang-cc -analyze -checker-cfref -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -verify %s
 
 struct FPRec {
index 7be247e7ca9ec957f0dd23e328240d00e2660742..134fd736e8ed17e975480babb2713d0ae613a578 100644 (file)
@@ -1,4 +1,5 @@
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -verify %s &&
+// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic-new-cast -verify %s &&
 // RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -verify %s
 
 typedef unsigned int NSUInteger;