| Index: src/parsing/parser-base.h
|
| diff --git a/src/parsing/parser-base.h b/src/parsing/parser-base.h
|
| index 7bde0a721bf8f3c4f07bdbbb4c3ac55229652c35..10c36aa917582687057a5d836ffad0f9ea1f441c 100644
|
| --- a/src/parsing/parser-base.h
|
| +++ b/src/parsing/parser-base.h
|
| @@ -472,7 +472,11 @@ class ParserBase : public Traits {
|
| return &non_patterns_to_rewrite_;
|
| }
|
|
|
| - void next_function_is_parenthesized(bool parenthesized) {
|
| + bool next_function_is_parenthesized() const {
|
| + return next_function_is_parenthesized_;
|
| + }
|
| +
|
| + void set_next_function_is_parenthesized(bool parenthesized) {
|
| next_function_is_parenthesized_ = parenthesized;
|
| }
|
|
|
| @@ -1245,6 +1249,8 @@ class ParserBase : public Traits {
|
| bool allow_harmony_async_await_;
|
| bool allow_harmony_restrictive_generators_;
|
| bool allow_harmony_trailing_commas_;
|
| +
|
| + friend class DiscardableZoneScope;
|
| };
|
|
|
| template <class Traits>
|
| @@ -1638,8 +1644,8 @@ ParserBase<Traits>::ParsePrimaryExpression(ExpressionClassifier* classifier,
|
| }
|
| // Heuristically try to detect immediately called functions before
|
| // seeing the call parentheses.
|
| - function_state_->next_function_is_parenthesized(peek() ==
|
| - Token::FUNCTION);
|
| + function_state_->set_next_function_is_parenthesized(peek() ==
|
| + Token::FUNCTION);
|
| ExpressionT expr = this->ParseExpression(true, classifier, CHECK_OK);
|
| Expect(Token::RPAREN, CHECK_OK);
|
| return expr;
|
|
|