bug1510684.js (586B)
1 var verified = false; 2 function f(a) { 3 if (a < 10000) 4 return 5; 5 assertEq(g_fwd.caller.arguments.length, 0); 6 assertEq(h_fwd.caller.arguments.length, 0); 7 verified = true; 8 return 6; 9 } 10 11 function g_fwd(x) { 12 with({}) {}; 13 return f(x); 14 } 15 function g(a) { 16 var x = a; 17 function inline() { 18 return g_fwd(x); 19 } 20 return inline(); 21 } 22 23 function h_fwd(x) { 24 with({}) {}; 25 return g(x); 26 } 27 function h(a) { 28 var x = a; 29 function inline() { 30 return h_fwd(x); 31 } 32 return inline(); 33 } 34 35 var i = 0; 36 while (!verified) { 37 h(i++); 38 }