| Index: src/parsing/preparser.h
|
| diff --git a/src/parsing/preparser.h b/src/parsing/preparser.h
|
| index 92b02071add0747ea5d76853fb2108b15ccf9edd..90e933f0ba874bd698d8fdeb873a557d78b37f0c 100644
|
| --- a/src/parsing/preparser.h
|
| +++ b/src/parsing/preparser.h
|
| @@ -445,13 +445,13 @@ class PreParserFactory {
|
| PreParserExpression NewObjectLiteralProperty(PreParserExpression key,
|
| PreParserExpression value,
|
| ObjectLiteralProperty::Kind kind,
|
| - bool is_static,
|
| + MethodKind method_kind,
|
| bool is_computed_name) {
|
| return PreParserExpression::Default();
|
| }
|
| PreParserExpression NewObjectLiteralProperty(PreParserExpression key,
|
| PreParserExpression value,
|
| - bool is_static,
|
| + MethodKind method_kind,
|
| bool is_computed_name) {
|
| return PreParserExpression::Default();
|
| }
|
| @@ -622,6 +622,10 @@ class PreParserTraits {
|
| return identifier.IsArguments();
|
| }
|
|
|
| + static bool IsAwait(PreParserIdentifier identifier) {
|
| + return identifier.IsAwait();
|
| + }
|
| +
|
| static bool IsEvalOrArguments(PreParserIdentifier identifier) {
|
| return identifier.IsEvalOrArguments();
|
| }
|
| @@ -865,6 +869,8 @@ class PreParserTraits {
|
| PreParserExpression expression, const Scanner::Location& params_loc,
|
| Scanner::Location* duplicate_loc, bool* ok);
|
|
|
| + V8_INLINE PreParserExpression ParseAsyncFunctionExpression(bool* ok);
|
| +
|
| void ReindexLiterals(const PreParserFormalParameters& paramaters) {}
|
|
|
| struct TemplateLiteralState {};
|
| @@ -937,6 +943,11 @@ class PreParserTraits {
|
| PreParserExpressionList args,
|
| int pos);
|
|
|
| + inline PreParserExpression ExpressionListToExpression(
|
| + PreParserExpressionList args) {
|
| + return PreParserExpression::Default();
|
| + }
|
| +
|
| inline void RewriteDestructuringAssignments() {}
|
|
|
| inline PreParserExpression RewriteExponentiation(PreParserExpression left,
|
| @@ -960,6 +971,9 @@ class PreParserTraits {
|
| inline void RewriteNonPattern(Type::ExpressionClassifier* classifier,
|
| bool* ok);
|
|
|
| + inline PreParserExpression RewriteAwaitExpression(PreParserExpression value,
|
| + int pos);
|
| +
|
| V8_INLINE Zone* zone() const;
|
| V8_INLINE ZoneList<PreParserExpression>* GetNonPatternList() const;
|
|
|
| @@ -1078,6 +1092,8 @@ class PreParser : public ParserBase<PreParserTraits> {
|
| Statement ParseHoistableDeclaration(bool* ok);
|
| Statement ParseHoistableDeclaration(int pos, bool is_generator, bool* ok);
|
| Statement ParseFunctionDeclaration(bool* ok);
|
| + Statement ParseAsyncFunctionDeclaration(bool* ok);
|
| + Expression ParseAsyncFunctionExpression(bool* ok);
|
| Statement ParseClassDeclaration(bool* ok);
|
| Statement ParseBlock(bool* ok);
|
| Statement ParseVariableStatement(VariableDeclarationContext var_context,
|
| @@ -1166,6 +1182,9 @@ void PreParserTraits::ParseArrowFunctionFormalParameterList(
|
| // lists that are too long.
|
| }
|
|
|
| +PreParserExpression PreParserTraits::ParseAsyncFunctionExpression(bool* ok) {
|
| + return pre_parser_->ParseAsyncFunctionExpression(ok);
|
| +}
|
|
|
| PreParserExpression PreParserTraits::ParseDoExpression(bool* ok) {
|
| return pre_parser_->ParseDoExpression(ok);
|
| @@ -1177,6 +1196,10 @@ void PreParserTraits::RewriteNonPattern(Type::ExpressionClassifier* classifier,
|
| pre_parser_->ValidateExpression(classifier, ok);
|
| }
|
|
|
| +PreParserExpression PreParserTraits::RewriteAwaitExpression(
|
| + PreParserExpression value, int pos) {
|
| + return value;
|
| +}
|
|
|
| Zone* PreParserTraits::zone() const {
|
| return pre_parser_->function_state_->scope()->zone();
|
|
|