summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/expr-visitor.cc5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/expr-visitor.cc b/src/expr-visitor.cc
index f6633049..9547a432 100644
--- a/src/expr-visitor.cc
+++ b/src/expr-visitor.cc
@@ -95,12 +95,11 @@ Result ExprVisitor::VisitExpr(Expr* root_expr) {
if (iter != try_expr->block.exprs.end()) {
PushDefault(&*iter++);
} else {
+ CHECK_RESULT(delegate_->OnCatchExpr(try_expr));
+ PopExprlist();
if (try_expr->catch_.empty()) {
CHECK_RESULT(delegate_->EndTryExpr(try_expr));
- PopExprlist();
} else {
- CHECK_RESULT(delegate_->OnCatchExpr(try_expr));
- PopExprlist();
PushExprlist(State::Catch, expr, try_expr->catch_);
}
}