__getattr__ possible loop

Chris Mellon arkanes at gmail.com
Thu Dec 28 11:25:09 EST 2006


On 28 Dec 2006 07:45:05 -0800, bearophileHUGS at lycos.com
<bearophileHUGS at lycos.com> wrote:
> Maksim Kasimov:
> > how to improve the situation depends on what do you expect to get by calling "T().method()"
>
> You are right, sorry for being cryptic. I think that's a kind of bug of
> Python (produced maybe by an infinite loop), so an improvement can be a
> traceback or some automatic breaking of that loop. Note that my problem
> comes from using Psyco that segfaults in that situation (if you have
> Psyco installed you can decomment two lines to see that). I think that
> using normal code Python+Psyco don't have to segfault, but I know this
> is tricky situation, so if no simple "solutions" can be found, then
> it's not a important thing and it can be ignored.
>

What I find most interesting is that you don't crash out because of
hitting the recursion limit.    My brief testing shows something odd
going on  - when the stack depth gets to almost 1000 (the recursion
limit on my system) it knocks some stuff off the stack and the stack
limit never gets to the limit. Some sort of built in tail recursion?



More information about the Python-list mailing list