michael@0: function testNestedClosures() { michael@0: function f(a, b) { michael@0: function g(x, y) { michael@0: function h(m, n) { michael@0: function k(u, v) { michael@0: var s = ''; michael@0: for (var i = 0; i < 5; ++i) michael@0: s = a + ',' + b + ',' + x + ',' + y + ',' + m + ',' + n + ',' + u + ',' + v; michael@0: return s; michael@0: } michael@0: return k(m+1, n+1); michael@0: } michael@0: return h(x+1, y+1); michael@0: } michael@0: return g(a+1, b+1); michael@0: } michael@0: michael@0: var s1; michael@0: for (var i = 0; i < 5; ++i) michael@0: s1 = f(i, i+i); michael@0: return s1; michael@0: } michael@0: assertEq(testNestedClosures(), '4,8,5,9,6,10,7,11');