Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(97)

Unified Diff: src/ast/ast-expression-visitor.cc

Issue 1864553002: [destructuring] don't attempt to visit contents of FunctionLiterals (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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()));
}
« no previous file with comments | « src/ast/ast-expression-visitor.h ('k') | src/parsing/parser.cc » ('j') | src/parsing/parser.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698