Matthias Hölzl <[EMAIL PROTECTED]> wrote:
> I have appended a backtrace with information about the relevant
> variables.  The backtrace seems to support your conclusion that the
> segfault happens during garbage collection.

Yep, thanks for the detailed output.

> 0x080e4169 in pobject_lives (interpreter=0x940a008, obj=0x11) at src/dod.c:198
> (gdb) print *sub_pmc
>       _num_val = 1.5100122518759912e-263, _string_val = 0x95a58f0},
> ... flags = 524288,

(gdb) p /x 524288
$1 = 0x80000
(gdb) p /x b_PObj_on_free_list_FLAG
$3 = 0x80000

So definitely a DOD bug, the sub PMC is already freed.

Anyway, with the upcoming changes for register frames, it's likely that
this bug will be removed. Marking of live objects has to use the call
chain and not like now the active register frames directly.

leo

Reply via email to