diff options
author | Zhongxing Xu <xuzhongxing@gmail.com> | 2010-11-17 09:16:19 +0000 |
---|---|---|
committer | Zhongxing Xu <xuzhongxing@gmail.com> | 2010-11-17 09:16:19 +0000 |
commit | 4ffcb9974c6b7142c4a1483abfcb1f88b6371c45 (patch) | |
tree | b346b374c499430bf5023522cc4e6c69fac701c0 /lib/Checker/GRExprEngine.cpp | |
parent | 5d93653247eeedaff5f0712178953b63d71a0b3b (diff) |
Add skeleton for handling various cfg dtors.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119491 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Checker/GRExprEngine.cpp')
-rw-r--r-- | lib/Checker/GRExprEngine.cpp | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/lib/Checker/GRExprEngine.cpp b/lib/Checker/GRExprEngine.cpp index acb67d63dc..2dcb354f00 100644 --- a/lib/Checker/GRExprEngine.cpp +++ b/lib/Checker/GRExprEngine.cpp @@ -718,6 +718,38 @@ void GRExprEngine::ProcessInitializer(const CFGInitializer Init, void GRExprEngine::ProcessImplicitDtor(const CFGImplicitDtor D, GRStmtNodeBuilder &builder) { + switch (D.getDtorKind()) { + case CFGElement::AutomaticObjectDtor: + ProcessAutomaticObjDtor(cast<CFGAutomaticObjDtor>(D), builder); + break; + case CFGElement::BaseDtor: + ProcessBaseDtor(cast<CFGBaseDtor>(D), builder); + break; + case CFGElement::MemberDtor: + ProcessMemberDtor(cast<CFGMemberDtor>(D), builder); + break; + case CFGElement::TemporaryDtor: + ProcessTemporaryDtor(cast<CFGTemporaryDtor>(D), builder); + break; + default: + llvm_unreachable("Unexpected dtor kind."); + } +} + +void GRExprEngine::ProcessAutomaticObjDtor(const CFGAutomaticObjDtor D, + GRStmtNodeBuilder &builder) { +} + +void GRExprEngine::ProcessBaseDtor(const CFGBaseDtor D, + GRStmtNodeBuilder &builder) { +} + +void GRExprEngine::ProcessMemberDtor(const CFGMemberDtor D, + GRStmtNodeBuilder &builder) { +} + +void GRExprEngine::ProcessTemporaryDtor(const CFGTemporaryDtor D, + GRStmtNodeBuilder &builder) { } void GRExprEngine::Visit(const Stmt* S, ExplodedNode* Pred, |