Andy Wingo <wi...@pobox.com> skribis:

> Picking up an old thread....
>
> On Thu 05 Nov 2015 14:11, Andy Wingo <wi...@pobox.com> writes:
>
>>  (1) A bug related to SMOB finalization and marking that affects
>>      LilyPond
>>
>> For (1) it seems to me that we just have a bug.  A SMOB mark function
>> was called on an object after the finalizer.  ****Note**** that having
>> the finalizer called doesn't mean that the GC object was collected -- it
>> just means it was collectable, perhaps in a clique of objects.
>> Finalization being asynchronous with marking it's possible that a clique
>> of objects was only half-finalized when a new mark procedure runs.  The
>> mark procedure saw an object on which free() was already called -- this
>> is possible.
>>
>> We should fix Guile so to "null out" the SMOB typecode when the SMOB
>> finalizer is called.  If our mark procedure sees a SMOB that has already
>> been finalized, it just returns.
>
> AFAIU the Lilypond / Guile 2.0 bug is still there.  Has anyone tried
> this strategy to fix it?

I haven’t.  :-/

Ludo’.

Reply via email to