mirror of https://github.com/tc39/test262.git
be19aaa18e
A subtle aspect of the for-of iteration protocol concerns abrupt completions that do *not* trigger iterator closing. Although this detail is implicit in the current structure of the specification text, some hosts may violate the protocol by closing the iterator because later steps *do* specify that behavior. The V8 engine is one such host--as of this writing, it incorrectly closes the iterator when accessing the `value` property of the iterator result produces an abrupt completion. Add tests verifying that the iterator protocol is not violated in this way for abrupt completions during the semantics of for-of evaluation. |
||
---|---|---|
.. | ||
block | ||
break | ||
class | ||
const | ||
continue | ||
debugger | ||
do-while | ||
empty | ||
expression | ||
for | ||
for-in | ||
for-of | ||
function | ||
generators | ||
if | ||
labeled | ||
let | ||
return | ||
switch | ||
throw | ||
try | ||
variable | ||
while | ||
with |