Commit 0f36ef09 authored by Jacek Caban's avatar Jacek Caban Committed by Alexandre Julliard

jscript: Ensure that the whole script is parsed.

parent 5e469f4f
......@@ -526,7 +526,7 @@ int parser_lex(void *lval, parser_ctx_t *ctx)
do {
skip_spaces(ctx);
if(ctx->ptr == ctx->end)
return 0;
return tEOF;
}while(skip_comment(ctx) || skip_html_comment(ctx));
if(isalphaW(*ctx->ptr)) {
......
......@@ -180,6 +180,7 @@ static source_elements_t *source_elements_add_statement(source_elements_t*,state
%token <ival> tAssignOper tEqOper tShiftOper tRelOper
%token <literal> tNumericLiteral
%token <wstr> tStringLiteral
%token tEOF
%type <source_elements> SourceElements
%type <source_elements> FunctionBody
......@@ -253,7 +254,7 @@ static source_elements_t *source_elements_add_statement(source_elements_t*,state
/* ECMA-262 3rd Edition 14 */
Program
: SourceElements HtmlComment
: SourceElements HtmlComment tEOF
{ program_parsed(ctx, $1); }
HtmlComment
......
......@@ -1985,6 +1985,7 @@ testSyntaxError("for(i=0;i<10", "E_SEMICOLON");
testSyntaxError("while(", "E_SYNTAX_ERROR");
testSyntaxError("if(", "E_SYNTAX_ERROR");
testSyntaxError("'unterminated", "E_UNTERMINATED_STR");
testSyntaxError("*", "E_SYNTAX_ERROR");
// ReferenceError tests
testException(function() {test = function() {}}, "E_ILLEGAL_ASSIGN");
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment