| Index: src/parsing/parser-base.h
|
| diff --git a/src/parsing/parser-base.h b/src/parsing/parser-base.h
|
| index cc8baf03bf3a3f5533247dd689b68bdcd9f6d2b7..05a15ca0e66f1fc58b10cb754e08c6a7d04f1bfd 100644
|
| --- a/src/parsing/parser-base.h
|
| +++ b/src/parsing/parser-base.h
|
| @@ -3799,14 +3799,17 @@ ParserBase<Impl>::ParseArrowFunctionLiteral(
|
| // Multiple statement body
|
| Consume(Token::LBRACE);
|
| DCHECK_EQ(scope(), formal_parameters.scope);
|
| - bool is_lazily_parsed = (mode() == PARSE_LAZILY &&
|
| - formal_parameters.scope->AllowsLazyParsing());
|
| + bool is_lazily_parsed =
|
| + (mode() == PARSE_LAZILY &&
|
| + formal_parameters.scope
|
| + ->AllowsLazyParsingWithoutUnresolvedVariables());
|
| + // TODO(marja): consider lazy-parsing inner arrow functions too.
|
| if (is_lazily_parsed) {
|
| Scanner::BookmarkScope bookmark(scanner());
|
| bool may_abort = bookmark.Set();
|
| LazyParsingResult result = impl()->SkipLazyFunctionBody(
|
| - &materialized_literal_count, &expected_property_count, may_abort,
|
| - CHECK_OK);
|
| + &materialized_literal_count, &expected_property_count, false,
|
| + may_abort, CHECK_OK);
|
|
|
| if (formal_parameters.materialized_literals_count > 0) {
|
| materialized_literal_count +=
|
|
|