Michael Felt <[email protected]> added the comment:
With the print statements - it does not crash:
./python -E -S -m sysconfig --generate-posix-vars ; if test $?
-ne 0 ; then echo "generate-posix-vars failed" ; rm -f
./pybuilddir.txt ; exit 1 ; fi
Objects/genobject.c:122:537318120
Objects/genobject.c:126:0
Objects/genobject.c:131:0
Objects/genobject.c:135:537318120
Objects/genobject.c:122:805942488
Objects/genobject.c:126:0
Objects/genobject.c:131:0
Objects/genobject.c:135:537318120
...
diff --git a/Objects/genobject.c b/Objects/genobject.c
index d3455f8..b8287a3 100644
--- a/Objects/genobject.c
+++ b/Objects/genobject.c
@@ -117,14 +117,23 @@ exc_state_clear(_PyErr_StackItem *exc_state)
static void
gen_dealloc(PyGenObject *gen)
{
+#include <stdio.h>
PyObject *self = (PyObject *) gen;
+ fprintf(stderr,"%s:%d:%ld\n", __FILE__,__LINE__,
_Py_AS_GC(self)->_gc_next);
+ fflush(stderr);
_PyObject_GC_UNTRACK(gen);
+ fprintf(stderr,"%s:%d:%ld\n", __FILE__,__LINE__,
_Py_AS_GC(self)->_gc_next);
+ fflush(stderr);
if (gen->gi_weakreflist != NULL)
PyObject_ClearWeakRefs(self);
+ fprintf(stderr,"%s:%d:%ld\n", __FILE__,__LINE__,
_Py_AS_GC(self)->_gc_next);
+ fflush(stderr);
_PyObject_GC_TRACK(self);
+ fprintf(stderr,"%s:%d:%ld\n", __FILE__,__LINE__,
_Py_AS_GC(self)->_gc_next);
+ fflush(stderr);
if (PyObject_CallFinalizerFromDealloc(self))
return; /* resurrected. :( */
$
On 13/04/2020 23:19, Batuhan Taskaya wrote:
> Batuhan Taskaya <[email protected]> added the comment:
>
> @Michael.Felt can you just insert some prints between these 3 to see what is
> going on (and re-compile)
>
> static void
> gen_dealloc(PyGenObject *gen)
> {
> PyObject *self = (PyObject *) gen;
> <<<<
> _PyObject_GC_UNTRACK(gen);
> <<<<
> if (gen->gi_weakreflist != NULL)
> PyObject_ClearWeakRefs(self);
> <<<<
> _PyObject_GC_TRACK(self);
>
>
> something like this should work: printf("%ld\n", _Py_AS_GC(self)->_gc_next);
>
> ----------
>
> _______________________________________
> Python tracker <[email protected]>
> <https://bugs.python.org/issue40244>
> _______________________________________
>
----------
_______________________________________
Python tracker <[email protected]>
<https://bugs.python.org/issue40244>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com