michael@0: michael@0: var res = 0; michael@0: michael@0: function foo(x, n, y) { michael@0: for (var j = 0; j < n; j++) { michael@0: x[j]; michael@0: y.f; michael@0: } michael@0: } michael@0: michael@0: var x = [1,2,3,4,5]; michael@0: var y = {}; michael@0: Object.defineProperty(y, 'f', {get:function() { res++; x.length = 2; }}); michael@0: michael@0: var a = foo(x, 5, y); michael@0: michael@0: assertEq(res, 5);