--- /dev/null
+var count = 0;
+
+function bar(f) {
+ if (++count >= 10000)
+ throw f;
+}
+
+noInline(bar);
+
+function foo(a) {
+ var x = a + 1;
+ for (;;) {
+ bar(function() { return x; });
+ }
+}
+
+noInline(foo);
+
+try {
+ foo(42);
+} catch (f) {
+ var result = f();
+ if (result != 43)
+ throw "Error: bad result: " + result;
+}
+