* PACK does not modify a hashtable, which it iterates on
(patch by Rob MacLachlan for a bug reported by Bryan
O'Connor).
* bug fix: flush closure information collected by physical
environment analysis prepass before the main pass. (bug reported
by Vasile Rotaru)
+ * bug fix: compiler pack phase does not modify a hashtable, which is
+ iterated. (reported by Bryan O'Connor, fixed by Rob MacLachlan)
* threads
** bug fix: parent thread now can be gc'ed even with a live
child thread
(do-ir2-blocks (block component)
(emit-saves block)
(pack-load-tns block))))
- (when *repack-blocks*
- (loop
- (when (zerop (hash-table-count *repack-blocks*)) (return))
- (maphash (lambda (block v)
- (declare (ignore v))
- (remhash block *repack-blocks*)
- (event repack-block)
- (pack-load-tns block))
- *repack-blocks*))))
+ (loop
+ (unless *repack-blocks* (return))
+ (let ((orpb *repack-blocks*))
+ (setq *repack-blocks* nil)
+ (maphash (lambda (block v)
+ (declare (ignore v))
+ (event repack-block)
+ (pack-load-tns block))
+ orpb))))
(values))
(clean-up-pack-structures)))
;;; checkins which aren't released. (And occasionally for internal
;;; versions, especially for internal versions off the main CVS
;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
-"0.9.4.72"
+"0.9.4.73"