Guido van Rossum <gu...@python.org> added the comment:

I don't think I remember what's so special about abstract_get_bases() to 
disable the recursion check. Maybe this macro is always just a 
micro-optimization? Then again it's hard to be sure, the behavior may depend on 
the platform.

Pulling in Antoine, who showed up in the  email 
https://mail.python.org/pipermail/python-dev/2008-August/082106.html is 
mentioned in a long comment in ceval.h about the recursion protection.

Possibly the Py_ALLOW_RECURSION macro is intended to ensure that some handler 
code for first-order recursion errors doesn't get interrupted by second-order 
recursion errors? There's a limit of 50 stack frames which feels a bit dodgy.

----------
nosy: +pitrou

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue41909>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to