Hi, I noticed that the new-style temps do not currently generate XDECREF code at the standard function error label. Neither are they considered for DECREF cleanup by the return statement.
For testing, I let ExprNodes.SequenceNode (i.e. TupleNode and ListNode) inherit from NewTempExprNode, which works quite well, but induces the following behaviour. When I add DECREF cleanup code to the return statement, the test suite passes just like before (I'm sure 'return' inside of control structures is not backed by enough tests, though). However, when I add the temp cleanup code to the error label, it crashes the failure tests in bufaccess.pyx. I wouldn't know why this kind of error cleanup should not be needed for new-style temps, so I'm not sure if it's just plain wrong from my side to put it there because of some reason I'm not aware of, or if I stumbled over a hidden bug here. Any comments on why it might be wrong to clean up new-style temps the same way as old-style temps? Stefan _______________________________________________ Cython-dev mailing list [email protected] http://codespeak.net/mailman/listinfo/cython-dev
