| Index: src/parser.h
|
| diff --git a/src/parser.h b/src/parser.h
|
| index 569236c593df736db2dc3786f327019b16fa4b80..7906563bd42191fbd9018996e397ba4e2c127db7 100644
|
| --- a/src/parser.h
|
| +++ b/src/parser.h
|
| @@ -796,6 +796,8 @@ class ParserTraits {
|
| const Scanner::Location& params_loc,
|
| Scanner::Location* duplicate_loc, bool* ok);
|
|
|
| + V8_INLINE DoExpression* ParseDoExpression(bool* ok);
|
| +
|
| void ReindexLiterals(const ParserFormalParameters& parameters);
|
|
|
| // Temporary glue; these functions will move to ParserBase.
|
| @@ -971,6 +973,7 @@ class Parser : public ParserBase<ParserTraits> {
|
| Block* ParseVariableStatement(VariableDeclarationContext var_context,
|
| ZoneList<const AstRawString*>* names,
|
| bool* ok);
|
| + DoExpression* ParseDoExpression(bool* ok);
|
|
|
| struct DeclarationDescriptor {
|
| enum Kind { NORMAL, PARAMETER };
|
| @@ -1104,6 +1107,8 @@ class Parser : public ParserBase<ParserTraits> {
|
| ForStatement* loop, Statement* init, Expression* cond, Statement* next,
|
| Statement* body, bool* ok);
|
|
|
| + void RewriteDoExpression(Expression* expr, bool* ok);
|
| +
|
| FunctionLiteral* ParseFunctionLiteral(
|
| const AstRawString* name, Scanner::Location function_name_location,
|
| FunctionNameValidity function_name_validity, FunctionKind kind,
|
| @@ -1248,6 +1253,7 @@ ZoneList<Statement*>* ParserTraits::ParseEagerFunctionBody(
|
| function_type, ok);
|
| }
|
|
|
| +
|
| void ParserTraits::CheckConflictingVarDeclarations(v8::internal::Scope* scope,
|
| bool* ok) {
|
| parser_->CheckConflictingVarDeclarations(scope, ok);
|
| @@ -1377,6 +1383,13 @@ void ParserTraits::AddParameterInitializationBlock(
|
| }
|
| }
|
| }
|
| +
|
| +
|
| +DoExpression* ParserTraits::ParseDoExpression(bool* ok) {
|
| + return parser_->ParseDoExpression(ok);
|
| +}
|
| +
|
| +
|
| } // namespace internal
|
| } // namespace v8
|
|
|
|
|