STINNER Victor added the comment: >> The question is more why/how the code didn't crash before? :-) > > Typical case of a Schroedinbug.
I don't believe in the chaos :-) I ran a "git bisect" since January 1st, 2017. Attached bug2.py started to crash since the following commit related to bpo-29049. --- 5a625d0aa6a6d9ec6574ee8344b41d63dcb9897e is the first bad commit commit 5a625d0aa6a6d9ec6574ee8344b41d63dcb9897e Author: INADA Naoki <songofaca...@gmail.com> Date: Sat Dec 24 20:19:08 2016 +0900 Issue #29049: Call _PyObject_GC_TRACK() lazily when calling Python function. Calling function is up to 5% faster. --- This change is also correct. It's more that the change showed a bug which was hidden before. It's just that now the garbage collector breaks the reference cycle differently since frames tracked differently by the GC. ---------- _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue31499> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com