js/src/jit-test/tests/baseline/bug842431-3.js

changeset 0
6474c204b198
equal deleted inserted replaced
-1:000000000000 0:5baf2f3c5d7f
1 // |jit-test|
2
3 // If an exception unwind hook performs a forced return, and this calls an
4 // onPop handler that throws, the exception should not be handled in the
5 // current frame but propagated to the caller.
6 var g = newGlobal();
7 var dbg = new Debugger(g);
8
9 g.eval('function f() { try { var y; throw 123; } catch(e) { assertEq(0, 1); } }');
10
11 dbg.onExceptionUnwind = function(frame) {
12 frame.onPop = function() {
13 return {throw: 321};
14 }
15
16 return {return: 11};
17 };
18
19 try {
20 g.f();
21 assertEq(0, 1);
22 } catch(e) {
23 assertEq(e.toString().contains("321"), true);
24 }

mercurial