Index: src/parser.h |
diff --git a/src/parser.h b/src/parser.h |
index 1941e9d27508ae36317137958a0140cf09b52da6..08350468e3f5ae3c9c1729f4e54d15a86cb7e535 100644 |
--- a/src/parser.h |
+++ b/src/parser.h |
@@ -494,6 +494,13 @@ class ParserTraits { |
// in strict mode. |
void CheckStrictModeLValue(Expression*expression, bool* ok); |
+ // Returns true if we have a binary expression between two numeric |
+ // literals. In that case, *x will be changed to an expression which is the |
+ // computed value. |
+ bool ShortcutNumericLiteralBinaryExpression( |
+ Expression** x, Expression* y, Token::Value op, int pos, |
+ AstNodeFactory<AstConstructionVisitor>* factory); |
+ |
// Reporting errors. |
void ReportMessageAt(Scanner::Location source_location, |
const char* message, |
@@ -553,7 +560,7 @@ class ParserTraits { |
int function_token_position, |
FunctionLiteral::FunctionType type, |
bool* ok); |
- Expression* ParseBinaryExpression(int prec, bool accept_IN, bool* ok); |
+ Expression* ParseUnaryExpression(bool* ok); |
private: |
Parser* parser_; |
@@ -696,7 +703,6 @@ class Parser : public ParserBase<ParserTraits> { |
// Support for hamony block scoped bindings. |
Block* ParseScopedBlock(ZoneStringList* labels, bool* ok); |
- Expression* ParseBinaryExpression(int prec, bool accept_IN, bool* ok); |
Expression* ParseUnaryExpression(bool* ok); |
Expression* ParsePostfixExpression(bool* ok); |
Expression* ParseLeftHandSideExpression(bool* ok); |