From a33b2bc873fd5b02e02c8961a32989c83066414e Mon Sep 17 00:00:00 2001 From: Thomas Wouters Date: Tue, 28 Mar 2006 08:14:24 +0000 Subject: [PATCH] Add an example of a generator->freevar->cell->generator reference-cycle that doesn't get cleaned up and thus leaks. --- Lib/test/leakers/test_generator_cycle.py | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 Lib/test/leakers/test_generator_cycle.py diff --git a/Lib/test/leakers/test_generator_cycle.py b/Lib/test/leakers/test_generator_cycle.py new file mode 100644 index 00000000000..d2fa72ca8e8 --- /dev/null +++ b/Lib/test/leakers/test_generator_cycle.py @@ -0,0 +1,11 @@ + +# This leaks since the introduction of yield-expr and the use of generators +# as coroutines, trunk revision 39239. The cycle-GC doesn't seem to pick up +# the cycle, or decides it can't clean it up. + +def leak(): + def gen(): + while True: + yield g + g = gen() +