Han-Wen Nienhuys escreveu: >> even the lazy smob case I wrote about here: >> >> http://thread.gmane.org/gmane.lisp.guile.user/6372 > > I would classify the use of mark bits outside of the mark phase as outside > of the defined API. If you want to have weak pointer semantics, use > a weak hashtable, or implement reference counting on the C side. > > I am actuallly inclined to add add abort() for anyone who calls scm_gc_mark() > outside the marking phase.
Also, you're creating a race condition: the mark bits are not protected by a lock, so you will be screwed in still more interesting ways if more threads or types would start doing this. -- Han-Wen Nienhuys - [EMAIL PROTECTED] - http://www.xs4all.nl/~hanwen
