aboutsummaryrefslogtreecommitdiff
path: root/lib/Analysis/Store.cpp
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
commit6ce85ee2a7c6d6c71fe728a8c2aab33504daeb5b (patch)
tree69c4f1ac1403564a416157defe935e5baabf6fd9 /lib/Analysis/Store.cpp
parent5bd2fe365f29799a78a862df2d1cff365d792b63 (diff)
rewrite the logic to make it follow the comments more closely.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@75750 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Analysis/Store.cpp')
-rw-r--r--lib/Analysis/Store.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/Analysis/Store.cpp b/lib/Analysis/Store.cpp
index bbda565cec..c7f9eecc73 100644
--- a/lib/Analysis/Store.cpp
+++ b/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;
}