| Index: src/ast/ast-expression-visitor.cc
|
| diff --git a/src/ast/ast-expression-visitor.cc b/src/ast/ast-expression-visitor.cc
|
| index dbf4ea463c851b2ae57447d9e2d0301e795b120b..4325ceba6969b83922c196109ad579bea888e062 100644
|
| --- a/src/ast/ast-expression-visitor.cc
|
| +++ b/src/ast/ast-expression-visitor.cc
|
| @@ -31,16 +31,15 @@ namespace internal {
|
| if (HasStackOverflow()) return; \
|
| } while (false)
|
|
|
| -
|
| -AstExpressionVisitor::AstExpressionVisitor(Isolate* isolate, Expression* root)
|
| - : root_(root), depth_(0) {
|
| +AstExpressionVisitor::AstExpressionVisitor(Isolate* isolate, Expression* root,
|
| + Mode mode)
|
| + : root_(root), depth_(0), mode_(mode) {
|
| InitializeAstVisitor(isolate);
|
| }
|
|
|
| -
|
| AstExpressionVisitor::AstExpressionVisitor(uintptr_t stack_limit,
|
| - Expression* root)
|
| - : root_(root), depth_(0) {
|
| + Expression* root, Mode mode)
|
| + : root_(root), depth_(0), mode_(mode) {
|
| InitializeAstVisitor(stack_limit);
|
| }
|
|
|
| @@ -198,6 +197,7 @@ void AstExpressionVisitor::VisitDebuggerStatement(DebuggerStatement* stmt) {}
|
| void AstExpressionVisitor::VisitFunctionLiteral(FunctionLiteral* expr) {
|
| Scope* scope = expr->scope();
|
| VisitExpression(expr);
|
| + if (is_shallow()) return;
|
| RECURSE_EXPRESSION(VisitDeclarations(scope->declarations()));
|
| RECURSE_EXPRESSION(VisitStatements(expr->body()));
|
| }
|
|
|