Armin Rigo added the comment:

Benjamin: oups, sorry.  I don't remember setting the "easy" keyword, my mistake.

Fwiw I'm +1 on Marc-Andre's solution.  Make it a tunable setting, e.g. with 
sys.setcollisionlimit().  Defaults to sys.maxint on existing Pythons and some 
smaller value (70?) on new Pythons.  It has the same benefits as the recursion 
limit: it's theoretically bad, but most of the time very useful.

It would also crash on bad usages of custom __hash__() methods: e.g. if you put 
a lot of keys in a dict, all with a custom __hash__() that returns 42.  I 
imagine that it can be considered a good thing to raise in this case rather 
than silently degrade performance forever.


Python tracker <>
Python-bugs-list mailing list

Reply via email to