diff options
author | Zhongxing Xu <xuzhongxing@gmail.com> | 2008-10-27 13:17:02 +0000 |
---|---|---|
committer | Zhongxing Xu <xuzhongxing@gmail.com> | 2008-10-27 13:17:02 +0000 |
commit | 27b57063d83b00474d7563fb5d608544e2364862 (patch) | |
tree | 594de8317f46f585f268e8ab88e137150600551c /lib/Analysis/MemRegion.cpp | |
parent | 3dda64ec0fad2fa60d882565d135ff598897fa9d (diff) |
An ElementRegion is really a typed region. Its super region's type has to be ArrayType.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58245 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Analysis/MemRegion.cpp')
-rw-r--r-- | lib/Analysis/MemRegion.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/lib/Analysis/MemRegion.cpp b/lib/Analysis/MemRegion.cpp index f14e0cba44..1db330cf09 100644 --- a/lib/Analysis/MemRegion.cpp +++ b/lib/Analysis/MemRegion.cpp @@ -83,6 +83,13 @@ void ElementRegion::ProfileRegion(llvm::FoldingSetNodeID& ID, SVal Idx, void ElementRegion::Profile(llvm::FoldingSetNodeID& ID) const { ElementRegion::ProfileRegion(ID, Index, superRegion); } + +QualType ElementRegion::getType(ASTContext& C) const { + QualType T = cast<TypedRegion>(superRegion)->getType(C); + ArrayType* AT = cast<ArrayType>(T.getTypePtr()); + return AT->getElementType(); +} + //===----------------------------------------------------------------------===// // Region pretty-printing. //===----------------------------------------------------------------------===// |