michael@0: test(); michael@0: function test() { michael@0: var catch1, catch2, catch3, finally1, finally2, finally3; michael@0: function gen() { michael@0: yield 1; michael@0: try { michael@0: try { michael@0: try { michael@0: yield 1; michael@0: } finally { michael@0: test(); michael@0: } michael@0: } catch (e) { michael@0: finally2 = true; michael@0: } michael@0: } catch (e) { } michael@0: } michael@0: iter = gen(); michael@0: iter.next(); michael@0: iter.next(); michael@0: iter.close(); michael@0: gc(); michael@0: }