| Index: src/parsing/parser.h
|
| diff --git a/src/parsing/parser.h b/src/parsing/parser.h
|
| index 35711b068f92b59adc3527e61cd3936692bb8a0c..a6a6a9e7143c69fcc4bc8e7b8ea600cf5f2e6301 100644
|
| --- a/src/parsing/parser.h
|
| +++ b/src/parsing/parser.h
|
| @@ -507,10 +507,10 @@ class ParserTraits {
|
|
|
| Expression* ThisExpression(Scope* scope, AstNodeFactory* factory,
|
| int pos = kNoSourcePosition);
|
| - Expression* SuperPropertyReference(Scope* scope, AstNodeFactory* factory,
|
| - int pos);
|
| - Expression* SuperCallReference(Scope* scope, AstNodeFactory* factory,
|
| - int pos);
|
| + Expression* NewSuperPropertyReference(Scope* scope, AstNodeFactory* factory,
|
| + int pos);
|
| + Expression* NewSuperCallReference(Scope* scope, AstNodeFactory* factory,
|
| + int pos);
|
| Expression* NewTargetExpression(Scope* scope, AstNodeFactory* factory,
|
| int pos);
|
| Expression* FunctionSentExpression(Scope* scope, AstNodeFactory* factory,
|
| @@ -840,7 +840,7 @@ class Parser : public ParserBase<ParserTraits> {
|
| Scanner::Location bindings_loc;
|
| };
|
|
|
| - class PatternRewriter : private AstVisitor {
|
| + class PatternRewriter final : private AstVisitor<PatternRewriter> {
|
| public:
|
| static void DeclareAndInitializeVariables(
|
| Block* block, const DeclarationDescriptor* declaration_descriptor,
|
| @@ -858,11 +858,10 @@ class Parser : public ParserBase<ParserTraits> {
|
| private:
|
| PatternRewriter() {}
|
|
|
| -#define DECLARE_VISIT(type) void Visit##type(v8::internal::type* node) override;
|
| +#define DECLARE_VISIT(type) void Visit##type(v8::internal::type* node);
|
| // Visiting functions for AST nodes make this an AstVisitor.
|
| AST_NODE_LIST(DECLARE_VISIT)
|
| #undef DECLARE_VISIT
|
| - void Visit(AstNode* node) override;
|
|
|
| enum PatternContext {
|
| BINDING,
|
| @@ -878,7 +877,7 @@ class Parser : public ParserBase<ParserTraits> {
|
| Expression* old_value = current_value_;
|
| current_value_ = value;
|
| recursion_level_++;
|
| - pattern->Accept(this);
|
| + Visit(pattern);
|
| recursion_level_--;
|
| current_value_ = old_value;
|
| }
|
| @@ -917,6 +916,8 @@ class Parser : public ParserBase<ParserTraits> {
|
| Expression* current_value_;
|
| int recursion_level_;
|
| bool* ok_;
|
| +
|
| + DEFINE_AST_VISITOR_MEMBERS_WITHOUT_STACKOVERFLOW()
|
| };
|
|
|
| Block* ParseVariableDeclarations(VariableDeclarationContext var_context,
|
|
|