((scan-head
(lambda (p)
(if (pair? p)
- (if (%weak-entry-key (car p))
+ (if (%weak-entry-valid? (car p))
(begin
(vector-set! buckets i p)
(scan-tail (cdr p) p))
(scan-tail
(lambda (p q)
(if (pair? p)
- (if (%weak-entry-key (car p))
+ (if (%weak-entry-valid? (car p))
(scan-tail (cdr p) p)
(begin
(decrement-table-count! table)
(let loop ((p (cdr p)))
(if (pair? p)
- (if (%weak-entry-key (car p))
+ (if (%weak-entry-valid? (car p))
(begin
(set-cdr! q p)
(scan-tail (cdr p) p))