X-Git-Url: https://git.saurik.com/apple/javascriptcore.git/blobdiff_plain/4be4e30906bcb8ee30b4d189205cb70bad6707ce..81345200c95645a1b0d2635520f96ad55dfde63f:/tests/stress/inferred-infinite-loop-that-uses-captured-variables.js diff --git a/tests/stress/inferred-infinite-loop-that-uses-captured-variables.js b/tests/stress/inferred-infinite-loop-that-uses-captured-variables.js new file mode 100644 index 0000000..733dbf1 --- /dev/null +++ b/tests/stress/inferred-infinite-loop-that-uses-captured-variables.js @@ -0,0 +1,27 @@ +function bar(f) { + throw f; +} + +noInline(bar); + +var shouldContinue = true; + +function foo(a) { + var x = a + 1; + while (shouldContinue) { + bar(function() { return x; }); + } +} + +noInline(foo); + +for (var i = 0; i < 10000; ++i) { + try { + foo(i); + } catch (f) { + var result = f(); + if (result != i + 1) + throw "Error: bad result for i = " + i + ": " + result; + } +} +