Vitja Makarov, 12.12.2010 20:23: > It seems that there is no major issues with generators, refleaks and so on.
I know what the refcounting problem is now. It's a bug that has already been (mostly) fixed in Haoyu's branch. So far, we didn't have "nonlocal", so there was no way to test how closure variables behaved on assignment. Since local variables in generator functions now live in the closure and can happily get assigned to, they suffer from the same problem that nonlocal has. The place to fix this is in the assignment code in NameNode. For values in closures, it must generate a GOTREF() before DECREF-ing the lhs in the assignment and a GIVREF() after the assignment. I fixed that and also ripped out the "make refnanny happy" code sections. Doing that, I also noticed a couple of other related refnanny problems for argument handling. I didn't care to port them back to mainline since I'd expect that the current 0.14 release can live with them. Let's assume from the current state of the generators branch that 0.15 is not too far off. Stefan _______________________________________________ Cython-dev mailing list [email protected] http://codespeak.net/mailman/listinfo/cython-dev
