diff options
Diffstat (limited to 'js/src/jit-test/tests/ion/iterator-indices-5.js')
-rw-r--r-- | js/src/jit-test/tests/ion/iterator-indices-5.js | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/ion/iterator-indices-5.js b/js/src/jit-test/tests/ion/iterator-indices-5.js new file mode 100644 index 0000000000..6982b26d2d --- /dev/null +++ b/js/src/jit-test/tests/ion/iterator-indices-5.js @@ -0,0 +1,30 @@ +function bar(o, trigger) { + with ({}) {} + if (trigger) { + Object.defineProperty(o, "y", { + get() { return 3; } + }); + } +} + +function foo(o, trigger) { + var result; + for (var key in o) { + result = o[key]; + bar(o, trigger); + } + return result; +} + +var arr = []; +for (var i = 0; i < 10; i++) { + arr.push({["x" + i]: 0, y: 0}); +} + +with ({}) {} +for (var i = 0; i < 1000; i++) { + for (var o of arr) { + foo(o, false) + } +} +print(foo(arr[0], true)); |