testBug753158.js (1051B)
1 function testFuncStmt1() { 2 var g = 3; 3 function f(b) { 4 if (b) { 5 function g() { return 42 } 6 assertEq(g(), 42); 7 } 8 } 9 f(true); 10 } 11 testFuncStmt1(); 12 13 function testFuncStmt2() { 14 var g = 3; 15 (function(b) { 16 if (b) { 17 function g() { return 42 } 18 function f() { assertEq(g(), 42); } 19 f(); 20 } 21 })(true); 22 } 23 testFuncStmt2(); 24 25 function testEval1() { 26 var g = 3; 27 function f() { 28 eval("var g = 42"); 29 assertEq(g, 42); 30 } 31 f(); 32 } 33 testEval1(); 34 35 function testEval2() { 36 var g = 3; 37 (function() { 38 eval("var g = 42"); 39 function f() { 40 assertEq(g, 42); 41 } 42 f(); 43 })(); 44 } 45 testEval2(); 46 47 function testWith1() { 48 var g = 3; 49 function f() { 50 with ({g:42}) { 51 assertEq(g, 42); 52 } 53 } 54 f(); 55 } 56 testWith1(); 57 58 function testWith2() { 59 var g = 3; 60 with ({g:42}) { 61 function f() { 62 assertEq(g, 42); 63 } 64 } 65 f(); 66 } 67 testWith2();