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?

Andy

Reply via email to