From 02fe28c8a6da29d4ad88d0900c133dcf22d24a75 Mon Sep 17 00:00:00 2001 From: Zhongxing Xu Date: Fri, 26 Nov 2010 08:52:48 +0000 Subject: [PATCH] Rename CXXObjectRegion to CXXTempObjectRegion. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120176 91177308-0d34-0410-b5e6-96231b3b80d8 --- .../clang/Checker/PathSensitive/MemRegion.h | 14 ++++++------- lib/Checker/CStringChecker.cpp | 4 ++-- lib/Checker/GRCXXExprEngine.cpp | 4 ++-- lib/Checker/MemRegion.cpp | 20 +++++++++---------- lib/Checker/RegionStore.cpp | 2 +- lib/Checker/Store.cpp | 3 ++- 6 files changed, 24 insertions(+), 23 deletions(-) diff --git a/include/clang/Checker/PathSensitive/MemRegion.h b/include/clang/Checker/PathSensitive/MemRegion.h index e0e347c856..f5e503a07b 100644 --- a/include/clang/Checker/PathSensitive/MemRegion.h +++ b/include/clang/Checker/PathSensitive/MemRegion.h @@ -94,7 +94,7 @@ public: FieldRegionKind, ObjCIvarRegionKind, END_DECL_REGIONS = ObjCIvarRegionKind, - CXXObjectRegionKind, + CXXTempObjectRegionKind, CXXBaseObjectRegionKind, END_TYPED_REGIONS = CXXBaseObjectRegionKind }; @@ -826,13 +826,13 @@ public: }; // C++ temporary object associated with an expression. -class CXXObjectRegion : public TypedRegion { +class CXXTempObjectRegion : public TypedRegion { friend class MemRegionManager; Expr const *Ex; - CXXObjectRegion(Expr const *E, MemRegion const *sReg) - : TypedRegion(sReg, CXXObjectRegionKind), Ex(E) {} + CXXTempObjectRegion(Expr const *E, MemRegion const *sReg) + : TypedRegion(sReg, CXXTempObjectRegionKind), Ex(E) {} static void ProfileRegion(llvm::FoldingSetNodeID &ID, Expr const *E, const MemRegion *sReg); @@ -847,7 +847,7 @@ public: void Profile(llvm::FoldingSetNodeID &ID) const; static bool classof(const MemRegion* R) { - return R->getKind() == CXXObjectRegionKind; + return R->getKind() == CXXTempObjectRegionKind; } }; @@ -999,8 +999,8 @@ public: const ObjCIvarRegion *getObjCIvarRegion(const ObjCIvarDecl* ivd, const MemRegion* superRegion); - const CXXObjectRegion *getCXXObjectRegion(Expr const *Ex, - LocationContext const *LC); + const CXXTempObjectRegion *getCXXTempObjectRegion(Expr const *Ex, + LocationContext const *LC); const CXXBaseObjectRegion *getCXXBaseObjectRegion(const CXXRecordDecl *decl, const MemRegion *superRegion); diff --git a/lib/Checker/CStringChecker.cpp b/lib/Checker/CStringChecker.cpp index 7374e8baa4..a75e196e37 100644 --- a/lib/Checker/CStringChecker.cpp +++ b/lib/Checker/CStringChecker.cpp @@ -629,8 +629,8 @@ bool CStringChecker::SummarizeRegion(llvm::raw_ostream& os, ASTContext& Ctx, os << "a block"; return true; case MemRegion::CXXThisRegionKind: - case MemRegion::CXXObjectRegionKind: - os << "a C++ object of type " << TR->getValueType().getAsString(); + case MemRegion::CXXTempObjectRegionKind: + os << "a C++ temp object of type " << TR->getValueType().getAsString(); return true; case MemRegion::VarRegionKind: os << "a variable of type" << TR->getValueType().getAsString(); diff --git a/lib/Checker/GRCXXExprEngine.cpp b/lib/Checker/GRCXXExprEngine.cpp index 2dd03b2782..a60af37c0a 100644 --- a/lib/Checker/GRCXXExprEngine.cpp +++ b/lib/Checker/GRCXXExprEngine.cpp @@ -95,7 +95,7 @@ void GRExprEngine::CreateCXXTemporaryObject(const Expr *Ex, ExplodedNode *Pred, SVal V = state->getSVal(Ex); const MemRegion *R = - ValMgr.getRegionManager().getCXXObjectRegion(Ex, + ValMgr.getRegionManager().getCXXTempObjectRegion(Ex, Pred->getLocationContext()); state = state->bindLoc(loc::MemRegionVal(R), V); @@ -108,7 +108,7 @@ void GRExprEngine::VisitCXXConstructExpr(const CXXConstructExpr *E, ExplodedNode *Pred, ExplodedNodeSet &Dst, bool asLValue) { if (!Dest) - Dest = ValMgr.getRegionManager().getCXXObjectRegion(E, + Dest = ValMgr.getRegionManager().getCXXTempObjectRegion(E, Pred->getLocationContext()); if (E->isElidable()) { diff --git a/lib/Checker/MemRegion.cpp b/lib/Checker/MemRegion.cpp index 366a574683..f2a4e0dd2c 100644 --- a/lib/Checker/MemRegion.cpp +++ b/lib/Checker/MemRegion.cpp @@ -360,14 +360,14 @@ void BlockDataRegion::Profile(llvm::FoldingSetNodeID& ID) const { BlockDataRegion::ProfileRegion(ID, BC, LC, getSuperRegion()); } -void CXXObjectRegion::ProfileRegion(llvm::FoldingSetNodeID &ID, - Expr const *Ex, - const MemRegion *sReg) { +void CXXTempObjectRegion::ProfileRegion(llvm::FoldingSetNodeID &ID, + Expr const *Ex, + const MemRegion *sReg) { ID.AddPointer(Ex); ID.AddPointer(sReg); } -void CXXObjectRegion::Profile(llvm::FoldingSetNodeID &ID) const { +void CXXTempObjectRegion::Profile(llvm::FoldingSetNodeID &ID) const { ProfileRegion(ID, Ex, getSuperRegion()); } @@ -422,7 +422,7 @@ void CompoundLiteralRegion::dumpToStream(llvm::raw_ostream& os) const { os << "{ " << (void*) CL << " }"; } -void CXXObjectRegion::dumpToStream(llvm::raw_ostream &os) const { +void CXXTempObjectRegion::dumpToStream(llvm::raw_ostream &os) const { os << "temp_object"; } @@ -698,12 +698,12 @@ MemRegionManager::getObjCIvarRegion(const ObjCIvarDecl* d, return getSubRegion(d, superRegion); } -const CXXObjectRegion* -MemRegionManager::getCXXObjectRegion(Expr const *E, - LocationContext const *LC) { +const CXXTempObjectRegion* +MemRegionManager::getCXXTempObjectRegion(Expr const *E, + LocationContext const *LC) { const StackFrameContext *SFC = LC->getCurrentStackFrame(); assert(SFC); - return getSubRegion(E, getStackLocalsRegion(SFC)); + return getSubRegion(E, getStackLocalsRegion(SFC)); } const CXXBaseObjectRegion * @@ -870,7 +870,7 @@ RegionOffset MemRegion::getAsOffset() const { case CXXThisRegionKind: case StringRegionKind: case VarRegionKind: - case CXXObjectRegionKind: + case CXXTempObjectRegionKind: goto Finish; case ElementRegionKind: { const ElementRegion *ER = cast(R); diff --git a/lib/Checker/RegionStore.cpp b/lib/Checker/RegionStore.cpp index 59c8730009..ae0dedff39 100644 --- a/lib/Checker/RegionStore.cpp +++ b/lib/Checker/RegionStore.cpp @@ -879,7 +879,7 @@ SVal RegionStoreManager::EvalBinOp(BinaryOperator::Opcode Op, Loc L, NonLoc R, case MemRegion::CompoundLiteralRegionKind: case MemRegion::FieldRegionKind: case MemRegion::ObjCIvarRegionKind: - case MemRegion::CXXObjectRegionKind: + case MemRegion::CXXTempObjectRegionKind: case MemRegion::CXXBaseObjectRegionKind: return UnknownVal(); diff --git a/lib/Checker/Store.cpp b/lib/Checker/Store.cpp index aaa518edc8..2e03009b1c 100644 --- a/lib/Checker/Store.cpp +++ b/lib/Checker/Store.cpp @@ -113,7 +113,8 @@ const MemRegion *StoreManager::CastRegion(const MemRegion *R, QualType CastToTy) case MemRegion::FieldRegionKind: case MemRegion::ObjCIvarRegionKind: case MemRegion::VarRegionKind: - case MemRegion::CXXObjectRegionKind: + case MemRegion::CXXTempObjectRegionKind: + case MemRegion::CXXBaseObjectRegionKind: return MakeElementRegion(R, PointeeTy); case MemRegion::ElementRegionKind: { -- 2.40.0