michael@0: var arr = [StopIteration, StopIteration, StopIteration, StopIteration, {}]; michael@0: var obj = {}; michael@0: var x; michael@0: var result = 'no error'; michael@0: try { michael@0: for (var i = 0; i < arr.length; i++) michael@0: x = (obj instanceof arr[i]); // last iteration throws, triggering deep bail michael@0: } catch (exc) { michael@0: result = exc.constructor.name; michael@0: } michael@0: assertEq(result, 'TypeError'); michael@0: