jit-bailout-doesnt-cause-sideeffect.js (349B)
1 // |jit-test| skip-if: !getBuildConfiguration("explicit-resource-management"); --enable-explicit-resource-management 2 3 function foo(d, o) { 4 using x = d; 5 return o.prop; 6 } 7 8 let count = 0; 9 let disp = { 10 [Symbol.dispose]() { count++; } 11 } 12 for (let i = 0; i < 2000; i++) { 13 foo(disp, { prop: 1}); 14 } 15 foo(disp, {a: 1, prop: 2}); 16 assertEq(count, 2001);