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 |