jscript: Don't require semicolon after function expression.

This commit is contained in:
Jacek Caban 2009-09-23 16:09:43 +02:00 committed by Alexandre Julliard
parent 9e523c6130
commit b2b197faba
2 changed files with 7 additions and 2 deletions

View File

@ -264,8 +264,6 @@ HtmlComment
/* ECMA-262 3rd Edition 14 */
SourceElements
: /* empty */ { $$ = new_source_elements(ctx); }
| SourceElements FunctionExpression
{ $$ = $1; }
| SourceElements Statement
{ $$ = source_elements_add_statement($1, $2); }
@ -297,6 +295,7 @@ Statement
: Block { $$ = $1; }
| VariableStatement { $$ = $1; }
| EmptyStatement { $$ = $1; }
| FunctionExpression { $$ = new_empty_statement(ctx); } /* FIXME: return NULL */
| ExpressionStatement { $$ = $1; }
| IfStatement { $$ = $1; }
| IterationStatement { $$ = $1; }

View File

@ -953,6 +953,12 @@ function do_test() {}
function nosemicolon() {} nosemicolon();
function () {} nosemicolon();
if(false) {
function in_if_false() { return true; } ok(false, "!?");
}
ok(in_if_false(), "in_if_false failed");
ok(typeof(doesnotexist) === "undefined", "typeof(doesnotexist) = " + typeof(doesnotexist));
(function() { newValue = 1; })();