[Python-Dev] Two possible fixes for isinstance nested tuples (original) (raw)

Brett Cannon bac at OCF.Berkeley.EDU
Sat Mar 20 11:09:16 EST 2004


Bug #858016 brought up the issue of deeply nested tuples of classes segfaulting isinstance and issubclass. There is a patch with the bug report that adds a check to make sure the tuple is completely shallow.

For Python 2.3, though, that doesn't work since it breaks code. So I have coded up something that calls Py_GetRecursionLimit and makes sure the depth never goes past that.

The question is which solution to use for Python 2.4 . I did some benchmarking on as-is and with the recursion check and the performance difference is no worse than 2% (granted this was before I made the recursion functions static, but that should just help performance). Would people rather do the recursion check or force people to use a shallow tuple in 2.4?

-Brett



More information about the Python-Dev mailing list