summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/debug/resumption-06.js
blob: 61e63f8acee9ea56622892725e67e82ea0fbd55f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// |jit-test| error: already executing generator
// Forced return from a star generator frame.

load(libdir + 'asserts.js')
load(libdir + 'iteration.js')

var g = newGlobal();
g.debuggeeGlobal = this;
g.eval("var dbg = new Debugger(debuggeeGlobal);" +
       "dbg.onDebuggerStatement = function (frame) { return { return: frame.eval(\"({ done: true, value: '!' })\").return }; };");

function* gen() {
    yield '1';
    debugger;  // Force return here. The value is ignored.
    yield '2';
}
var iter = gen();
assertIteratorNext(iter, '1');
assertIteratorDone(iter, '!');
iter.next();
assertEq(0, 1);