Index: src/preparser.h |
diff --git a/src/preparser.h b/src/preparser.h |
index f7f532372b58cd23c8da8e8afb2bd16b3f8e237e..8171f9433a4627c9b8fe5f1c5ac6a72d73a9ae4a 100644 |
--- a/src/preparser.h |
+++ b/src/preparser.h |
@@ -527,16 +527,15 @@ class ParserBase : public Traits { |
// Report syntax errors. |
void ReportMessage(const char* message, const char* arg = NULL, |
- bool is_reference_error = false) { |
+ ParseErrorType error_type = kSyntaxError) { |
Scanner::Location source_location = scanner()->location(); |
- Traits::ReportMessageAt(source_location, message, arg, is_reference_error); |
+ Traits::ReportMessageAt(source_location, message, arg, error_type); |
} |
void ReportMessageAt(Scanner::Location location, const char* message, |
- bool is_reference_error = false) { |
- Traits::ReportMessageAt(location, message, |
- reinterpret_cast<const char*>(0), |
- is_reference_error); |
+ ParseErrorType error_type = kSyntaxError) { |
+ Traits::ReportMessageAt(location, message, reinterpret_cast<const char*>(0), |
+ error_type); |
} |
void ReportUnexpectedToken(Token::Value token); |
@@ -1345,15 +1344,12 @@ class PreParserTraits { |
} |
// Reporting errors. |
- void ReportMessageAt(Scanner::Location location, |
- const char* message, |
+ void ReportMessageAt(Scanner::Location location, const char* message, |
const char* arg = NULL, |
- bool is_reference_error = false); |
- void ReportMessageAt(int start_pos, |
- int end_pos, |
- const char* message, |
+ ParseErrorType error_type = kSyntaxError); |
+ void ReportMessageAt(int start_pos, int end_pos, const char* message, |
const char* arg = NULL, |
- bool is_reference_error = false); |
+ ParseErrorType error_type = kSyntaxError); |
// "null" return type creators. |
static PreParserIdentifier EmptyIdentifier() { |
@@ -2988,7 +2984,7 @@ ParserBase<Traits>::ParseTemplateLiteral(ExpressionT tag, int start, bool* ok) { |
} else if (next == Token::ILLEGAL) { |
Traits::ReportMessageAt( |
Scanner::Location(position() + 1, peek_position()), |
- "unexpected_token", "ILLEGAL", false); |
+ "unexpected_token", "ILLEGAL", kSyntaxError); |
*ok = false; |
return Traits::EmptyExpression(); |
} |
@@ -3017,7 +3013,7 @@ ParserBase<Traits>::ParseTemplateLiteral(ExpressionT tag, int start, bool* ok) { |
} else if (next == Token::ILLEGAL) { |
Traits::ReportMessageAt( |
Scanner::Location(position() + 1, peek_position()), |
- "unexpected_token", "ILLEGAL", false); |
+ "unexpected_token", "ILLEGAL", kSyntaxError); |
*ok = false; |
return Traits::EmptyExpression(); |
} |
@@ -3039,7 +3035,7 @@ typename ParserBase<Traits>::ExpressionT ParserBase< |
const char* message, bool* ok) { |
if (is_strict(language_mode()) && this->IsIdentifier(expression) && |
this->IsEvalOrArguments(this->AsIdentifier(expression))) { |
- this->ReportMessageAt(location, "strict_eval_arguments", false); |
+ this->ReportMessageAt(location, "strict_eval_arguments", kSyntaxError); |
*ok = false; |
return this->EmptyExpression(); |
} else if (expression->IsValidReferenceExpression()) { |
@@ -3051,7 +3047,7 @@ typename ParserBase<Traits>::ExpressionT ParserBase< |
ExpressionT error = this->NewThrowReferenceError(message, pos); |
return factory()->NewProperty(expression, error, pos); |
} else { |
- this->ReportMessageAt(location, message, true); |
+ this->ReportMessageAt(location, message, kReferenceError); |
*ok = false; |
return this->EmptyExpression(); |
} |