>http://www.python.org/sf/584626>> This patch removes the limitation of not allowing yield in the try part
> of a try/finally. The dealloc function of a generator checks if the
> generator is still alive and resumes it one last time from the return
> instruction at the end of the code, causing any try/finally blocks to be
> triggered. Any exceptions raised are treated just like exceptions in a
> __del__ finalizer (printed and ignored).
Try building Python in debug mode, and then run the test suite. I get
a fatal error in test_generators (but not when that test is run in
isolation):
Fatal Python error: ../Python/ceval.c:2256 object at 0x40b05654 has negative ref count -1
--Guido van Rossum (home page: http://www.python.org/~guido/)