[Python-Dev] A little GC confusion

Martin v. Loewis martin@v.loewis.de
22 Feb 2002 11:25:09 +0100

"Jason Orendorff" <jason@jorendorff.com> writes:

> I think David is asking about line 1404 of Objects/typeobject.c,
> where it says that PyType_Type is Py_TPFLAGS_HAVE_GC.
> How can it have GC when many instances are static objects, not
> allocated with PyObject_GC_VarNew()?

Because the type type implements tp_is_gc (typeobject.c:1378),
declaring static type objects as not being gc. In turn, garbage
collection will not attempt to look at the GC header of these type