michael@0: actual = ''; michael@0: expected = '2,5,'; michael@0: michael@0: function loop(f) { michael@0: var p; michael@0: for (var i = 0; i < 1000; ++i) { michael@0: p = f(); michael@0: } michael@0: return p; michael@0: } michael@0: michael@0: function f(k) { michael@0: function g() { michael@0: return k; michael@0: } michael@0: michael@0: k = 2; michael@0: appendToActual(loop(g)); michael@0: k = 5; michael@0: appendToActual(loop(g)); michael@0: } michael@0: michael@0: f(); michael@0: michael@0: michael@0: assertEq(actual, expected)