This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author vstinner
Recipients ajaksu2, bsilverthorn, iritkatriel, pitrou, vstinner
Date 2021-06-29.01:30:14
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1624930214.84.0.469991217288.issue1662@roundup.psfhosted.org>
In-reply-to
Content
This issue was fixed differently in bpo-44263, by adding a test in PyType_Ready():

    // bpo-44263: tp_traverse is required if Py_TPFLAGS_HAVE_GC is set.
    // Note: tp_clear is optional.
    if (type->tp_flags & Py_TPFLAGS_HAVE_GC
        && type->tp_traverse == NULL)
    {
        PyErr_Format(PyExc_SystemError,
                     "type %s has the Py_TPFLAGS_HAVE_GC flag "
                     "but has no traverse function",
                     type->tp_name);
        return -1;
    }

commit ee7637596d8de25f54261bbeabc602d31e74f482
Author: Victor Stinner <vstinner@python.org>
Date:   Tue Jun 1 23:37:12 2021 +0200

    bpo-44263: Py_TPFLAGS_HAVE_GC requires tp_traverse (GH-26463)
    
    The PyType_Ready() function now raises an error if a type is defined
    with the Py_TPFLAGS_HAVE_GC flag set but has no traverse function
    (PyTypeObject.tp_traverse).
History
Date User Action Args
2021-06-29 01:30:14vstinnersetrecipients: + vstinner, pitrou, ajaksu2, bsilverthorn, iritkatriel
2021-06-29 01:30:14vstinnersetmessageid: <1624930214.84.0.469991217288.issue1662@roundup.psfhosted.org>
2021-06-29 01:30:14vstinnerlinkissue1662 messages
2021-06-29 01:30:14vstinnercreate