summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZhongxing Xu <xuzhongxing@gmail.com>2009-07-15 06:21:18 +0000
committerZhongxing Xu <xuzhongxing@gmail.com>2009-07-15 06:21:18 +0000
commita5da8d25b7eb26a57816218339bb8a81ec1f7e12 (patch)
treec553ed07b953bc532f821c0ec26103d2935f13bd
parent9e0c7f2c5e9324f064b05df4328793740f2fc186 (diff)
downloadbcm5719-llvm-a5da8d25b7eb26a57816218339bb8a81ec1f7e12.tar.gz
bcm5719-llvm-a5da8d25b7eb26a57816218339bb8a81ec1f7e12.zip
rewrite the logic to make it follow the comments more closely.
llvm-svn: 75750
-rw-r--r--clang/lib/Analysis/Store.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/clang/lib/Analysis/Store.cpp b/clang/lib/Analysis/Store.cpp
index bbda565cec5..c7f9eecc738 100644
--- a/clang/lib/Analysis/Store.cpp
+++ b/clang/lib/Analysis/Store.cpp
@@ -248,7 +248,8 @@ const GRState *StoreManager::InvalidateRegion(const GRState *state,
// The only exception is if the original region had a location type as its
// value type we always want to treat the region as binding to a location.
// This issue can arise when pointers are casted to integers and back.
- if (!Loc::IsLocType(T) || Loc::IsLocType(NewT))
+
+ if (!(Loc::IsLocType(T) && !Loc::IsLocType(NewT)))
T = NewT;
}
OpenPOWER on IntegriCloud