diff options
author | Ludovic Courtes <ludovic.courtes@laas.fr> | 2006-05-28 20:05:05 +0000 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2008-09-05 09:34:57 +0200 |
commit | 194c0a3e402f20c51f5bf7041d8b9edce913b071 (patch) | |
tree | 5f442a54e921487f3f39e4bbe9e5ab836e5538a7 /libguile/goops.c | |
parent | 10fb3386dd186244becc493d83c291b9bec2075e (diff) | |
download | guile-194c0a3e402f20c51f5bf7041d8b9edce913b071.tar.gz |
Fixed the SMOB mark procedure so that it handles free-list objects.
* libguile/smob.c (smob_mark): Check the 7-bit type tag and ignore those
whose type tag is not that of a SMOB in order to cleanly handle
free-list objects (this fixes a bug which showed up on SPARC64).
Also, don't mark & push ADDR itself.
(scm_gc_mark): Moved the definition and undefinition of
`CURRENT_MARK_PTR' and `CURRENT_MARK_LIMIT' here.
git-archimport-id: lcourtes@laas.fr--2005-libre/guile-core--boehm-gc--1.9--patch-30
Diffstat (limited to 'libguile/goops.c')
0 files changed, 0 insertions, 0 deletions