mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-23 02:05:42 +00:00
Bug 877965 - Ignore empty statements in var declarations in asm.js mode. r=luke
This commit is contained in:
parent
c4584add39
commit
9aadff0e83
@ -4597,7 +4597,7 @@ CheckVariableDecls(ModuleCompiler &m, FunctionCompiler::LocalMap *locals, ParseN
|
||||
{
|
||||
ParseNode *stmt = *stmtIter;
|
||||
|
||||
for (; stmt && stmt->isKind(PNK_VAR); stmt = NextNode(stmt)) {
|
||||
for (; stmt && stmt->isKind(PNK_VAR); stmt = NextNonEmptyStatement(stmt)) {
|
||||
for (ParseNode *var = VarListHead(stmt); var; var = NextNode(var)) {
|
||||
if (!CheckVariableDecl(m, var, locals))
|
||||
return false;
|
||||
|
@ -34,6 +34,7 @@ assertEq(asmLink(asmCompile('x', USE_ASM + 'function f(){} return f'), 1)(), und
|
||||
assertEq(asmLink(asmCompile('x','y', USE_ASM + 'function f(){} return f'), 1, 2)(), undefined);
|
||||
|
||||
assertEq(asmLink(asmCompile(USE_ASM + 'function f(i) {i=i|0} return f'))(42), undefined);
|
||||
assertEq(asmLink(asmCompile(USE_ASM + 'function f() {var i=0;; var j=1;} return f'))(), undefined); // bug 877965 second part
|
||||
assertAsmTypeFail(USE_ASM + 'function f(i) {i=i|0;var i} return f');
|
||||
assertAsmTypeFail(USE_ASM + 'function f(i) {i=i|0;var i=0} return f');
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user