CallExprs are now no longer block-level expressions in the CFG by construction.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@47913 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Ted Kremenek 2008-03-04 22:29:40 +00:00
Родитель 65cfb7373d
Коммит 243ee47dab
1 изменённых файлов: 0 добавлений и 12 удалений

Просмотреть файл

@ -120,7 +120,6 @@ private:
CFGBlock* WalkAST_VisitChildren(Stmt* S);
CFGBlock* WalkAST_VisitDeclSubExprs(StmtIterator& I);
CFGBlock* WalkAST_VisitStmtExpr(StmtExpr* S);
CFGBlock* WalkAST_VisitCallExpr(CallExpr* C);
void FinishBlock(CFGBlock* B);
};
@ -318,9 +317,6 @@ CFGBlock* CFGBuilder::WalkAST(Stmt* S, bool AlwaysAddStmt = false) {
return Block;
}
case Stmt::CallExprClass:
return WalkAST_VisitCallExpr(cast<CallExpr>(S));
case Stmt::StmtExprClass:
return WalkAST_VisitStmtExpr(cast<StmtExpr>(S));
@ -438,14 +434,6 @@ CFGBlock* CFGBuilder::WalkAST_VisitStmtExpr(StmtExpr* S) {
return VisitCompoundStmt(S->getSubStmt());
}
/// WalkAST_VisitCallExpr - Utility method to handle function calls that
/// are nested in expressions. The idea is that each function call should
/// appear as a distinct statement in the CFGBlock.
CFGBlock* CFGBuilder::WalkAST_VisitCallExpr(CallExpr* C) {
Block->appendStmt(C);
return WalkAST_VisitChildren(C);
}
/// VisitStmt - Handle statements with no branching control flow.
CFGBlock* CFGBuilder::VisitStmt(Stmt* Statement) {
// We cannot assume that we are in the middle of a basic block, since