var finalizerRun = false; | |
var caught = false; | |
function foo(arr) { | |
finalizerRun = true; | |
return not_defined; | |
} | |
function gen() { | |
try { | |
yield 1; | |
} finally { | |
foo(); | |
} | |
} | |
function test() { | |
var i_have_locals; | |
for (i in gen()) { | |
"this won't work"(); | |
} | |
} | |
try { | |
test(); | |
} catch(e) { | |
caught = true; | |
assertEq(''+e, "ReferenceError: not_defined is not defined"); | |
} | |
assertEq(finalizerRun, true); | |
assertEq(caught, true); |