[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: scheme closures: crash during garbage collection
From: |
Neil Jerram |
Subject: |
Re: scheme closures: crash during garbage collection |
Date: |
Fri, 09 Jun 2006 20:54:15 +0100 |
User-agent: |
Gnus/5.1007 (Gnus v5.10.7) Emacs/21.4 (gnu/linux) |
[added crosspost to guile-devel]
"gregory benison" <address@hidden> writes:
> guile-gnome (up to v. 2.7.98, most recent as of this writing) can
> call scm_gc_unprotect_object() during a scheme garbage collector
> sweep, which is a fatal error in guile-1.8. In earlier versions
> of guile, it is not a fatal error (but still, I think you're not
> supposed to do it.)
Many thanks for this great analysis.
It seems to me, though, that the same kind of situation, leading to
wanting to call scm_gc_unprotect_object during GC, is likely to arise
in any sufficiently complex application, and hence that we should
support this within Guile itself.
(I'm not personally familiar with the GC code, but it may be that the
new restriction in 1.8 against doing this was not strongly intended,
but more of a shortcut that was then forgotten.)
That said, your proposed solution would be a good short term
workaround, until we can fix this in the Guile code.
Can people more familiar with the GC code comment on whether this fix
is feasible?
Regards,
Neil
- Re: scheme closures: crash during garbage collection,
Neil Jerram <=