michael@0: var Q = 0; michael@0: var thrown = false; michael@0: try { michael@0: (function f(i) { Q = i; if (i == 200000) return; f(i+1); })(1) michael@0: } catch (e) { michael@0: thrown = true; michael@0: } michael@0: michael@0: // Exact behavior of recursion check depends on which JIT we use. michael@0: assertEq(thrown && Q > 3500, true);