summaryrefslogtreecommitdiffstats
path: root/clang
diff options
context:
space:
mode:
authorZhongxing Xu <xuzhongxing@gmail.com>2008-10-17 01:51:27 +0000
committerZhongxing Xu <xuzhongxing@gmail.com>2008-10-17 01:51:27 +0000
commit4e500455c9487fd72146a3d39d548a962ae24ff4 (patch)
tree742f11b1bb0eafe49f92e54e987ca8da69abfec5 /clang
parentca0546facc5af4c27a5efd5ff80935ba05ae030a (diff)
downloadbcm5719-llvm-4e500455c9487fd72146a3d39d548a962ae24ff4.tar.gz
bcm5719-llvm-4e500455c9487fd72146a3d39d548a962ae24ff4.zip
Array and struct variables do have lvalue. For example,
struct s {}; void f() { int a[10]; int (*p)[10]; p = &a; (*p)[3] =1; struct s d; struct s *q; q = &d; } We return the corresponding MemRegionVal for them. llvm-svn: 57664
Diffstat (limited to 'clang')
-rw-r--r--clang/lib/Analysis/BasicStore.cpp2
1 files changed, 0 insertions, 2 deletions
diff --git a/clang/lib/Analysis/BasicStore.cpp b/clang/lib/Analysis/BasicStore.cpp
index 000ea1bef2d..9d8a9acda50 100644
--- a/clang/lib/Analysis/BasicStore.cpp
+++ b/clang/lib/Analysis/BasicStore.cpp
@@ -79,8 +79,6 @@ StoreManager* clang::CreateBasicStoreManager(GRStateManager& StMgr) {
return new BasicStoreManager(StMgr);
}
RVal BasicStoreManager::getLValueVar(const GRState* St, const VarDecl* VD) {
- QualType T = VD->getType();
- assert(!T->isArrayType() && "Array and struct variable have no lvalue.");
return lval::MemRegionVal(MRMgr.getVarRegion(VD));
}
OpenPOWER on IntegriCloud