jscript: Don't require semicolon after function expression.
This commit is contained in:
parent
9e523c6130
commit
b2b197faba
|
@ -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; }
|
||||
|
|
|
@ -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; })();
|
||||
|
|
Loading…
Reference in New Issue