;;; With 4 GB of heap on MacOS with recent SBCL (1.4.7), this dies at ;;; at between the 3rd and 8th iteration. (defparameter *limit* 4000000) (defun alloc-small-data () (make-array 32)) (defun f () (loop :with table := (make-array *limit*) :for i :below *limit* :do (setf (aref table i) (alloc-small-data)) :finally (return (progn #+FIX-2 (fill table nil) (length table))))) (defun blow () (loop :for i :from 1 :do ;; UNCOMMENT THIS TO "FIX" THE BUG #+FIX-1 (sb-ext:gc :full t) (f) (format t "Iteration #~D *************************************************************:" i) (room) (terpri)))