blob: 8b1ea96e6085e9b26b15cfdf72e718e137d6d81a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
// |jit-test| error: fit
// Throwing an exception from an onPop handler when yielding terminates the debuggee
// but does not close the generator-iterator.
var g = newGlobal({newCompartment: true});
var dbg = new Debugger;
var gw = dbg.addDebuggee(g);
dbg.onDebuggerStatement = function handleDebugger(frame) {
frame.onPop = function (c) {
throw "fit";
};
};
g.eval("function* g() { for (var i = 0; i < 10; i++) { debugger; yield i; } }");
g.eval("var it = g();");
assertEq(gw.executeInGlobal("it.next();"), null);
dbg.enabled = false;
assertEq(g.it.next().value, 1);
|