| # Test case taken from test_generators | |
| # See http://mail.python.org/pipermail/python-dev/2005-November/058339.html | |
| from itertools import tee | |
| import gc | |
| def leak(): | |
| def inner(): | |
| def fib(): | |
| def yield_identity_forever(g): | |
| while 1: | |
| yield g | |
| def _fib(): | |
| for i in yield_identity_forever(head): | |
| yield i | |
| head, tail, result = tee(_fib(), 3) | |
| return result | |
| x = fib() | |
| x.next() | |
| inner() | |
| gc.collect() ; gc.collect() | |
| # this is expected to return 0 | |
| return gc.collect() |