diff options
Diffstat (limited to 'js/src/jit-test/tests/closures/lambda-inner-heavy.js')
-rw-r--r-- | js/src/jit-test/tests/closures/lambda-inner-heavy.js | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/closures/lambda-inner-heavy.js b/js/src/jit-test/tests/closures/lambda-inner-heavy.js new file mode 100644 index 0000000000..eba73cb645 --- /dev/null +++ b/js/src/jit-test/tests/closures/lambda-inner-heavy.js @@ -0,0 +1,32 @@ +actual = ''; +expected = '0,0,0,0,0,0,0,1,1,1,1,1,1,1,2,2,2,2,2,2,2,3,3,3,3,3,3,3,4,4,4,4,4,4,4,'; + +function g(a) { + a(); +} + +function n() { +} + +function f(y) { + for (var i = 0; i < 7; ++i) { + var q; + q = function() { + appendToActual(y); + + var m = 1; + var z = function() { + appendToActual(m); + } + m = 2; + }; + g(q); + } +} + +for (var i = 0; i < 5; ++i) { + f(i); + } + + +assertEq(actual, expected) |