[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Weak pointers and GC

I have a question about something that's not specified in T that people on
T-DISCUSSION might want to think about.  The question is what GC does to
entries in the weak pointer table (ie, the OBJECT-HASH table) that are NOT
GC'ed.  Objects in the table that are GC'ed obviously go away (that's the
whole point of the table).

As of now (T3.1) it seems that the table is cleared upon GC. For example,
when I enter

	(let ((x (object-unhash 69))) (gc))

the object that was in (OBJECT-UNHASH 69) will not be GC'ed (because it is
referenced in the current lexical context by X), but it will no longer be
accessable through OBJECT-UNHASH.

Is there any reason for this??  Keeping them in the table makes more sense 
to me.

Bruce Krulwich