Unify JSC Parser's error and error message
authorbenjamin@webkit.org <benjamin@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 11 Apr 2013 03:17:08 +0000 (03:17 +0000)
committerbenjamin@webkit.org <benjamin@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 11 Apr 2013 03:17:08 +0000 (03:17 +0000)
commit169daaa07f11ee67dcab4175dc995a1397d50e4e
treeb0788c877efe561a6914ae3a643d89dfaf5425c8
parentcc22e66bbf1ddd574d75c671177bf2510858ae6a
Unify JSC Parser's error and error message
https://bugs.webkit.org/show_bug.cgi?id=114363

Reviewed by Geoffrey Garen.

The parser kept the error state over two attributes:
error and errorMessage. They were changed in sync,
but had some discrepancy (for example, the error message
was always defined to something).

This patch unifies the two. There is an error if
if the error message is non-null or if the parsing finished
before the end.

This also gets rid of the allocation of the error message
when instantiating a parser.

* parser/Parser.cpp:
(JSC::::Parser):
(JSC::::parseInner):
(JSC::::parseSourceElements):
(JSC::::parseVarDeclaration):
(JSC::::parseConstDeclaration):
(JSC::::parseForStatement):
(JSC::::parseSwitchStatement):
(JSC::::parsePrimaryExpression):
* parser/Parser.h:
(JSC::Parser::updateErrorMessage):
(JSC::Parser::updateErrorWithNameAndMessage):
(JSC::Parser::hasError):
(Parser):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148167 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/parser/Parser.cpp
Source/JavaScriptCore/parser/Parser.h