js/src/tests/js1_7/iterable/regress-340526-02.js

branch
TOR_BUG_3246
changeset 7
129ffea94266
equal deleted inserted replaced
-1:000000000000 0:ede0b620f60d
1 // |reftest| skip -- obsolete test
2 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
3 /* This Source Code Form is subject to the terms of the Mozilla Public
4 * License, v. 2.0. If a copy of the MPL was not distributed with this
5 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
6
7 //-----------------------------------------------------------------------------
8 var BUGNUMBER = 340526;
9 var summary = 'Iterators: cross-referenced objects with close handler can ' +
10 'delay close handler execution';
11
12 printBugNumber(BUGNUMBER);
13 printStatus (summary);
14
15 var close_count = 0;
16
17 function gen()
18 {
19 try {
20 yield 0;
21 } finally {
22 ++close_count;
23 }
24 }
25
26 var iter1 = gen();
27 var iter2 = gen();
28
29 iter1.another = iter2;
30 iter2.another = iter1;
31
32 iter1.next();
33 iter2.next();
34
35 iter1 = null;
36 iter2 = null;
37
38 gc();
39
40 var expect = 2;
41 var actual = close_count;
42
43 reportCompare(expect, actual, summary);

mercurial