diff --git a/tools/worldload.lisp b/tools/worldload.lisp index 6b91c4f80d8adff940203e60f60732c553912f0f..66bc07c9346422a4919f3f27f46671e7c6c8afe5 100644 --- a/tools/worldload.lisp +++ b/tools/worldload.lisp @@ -6,7 +6,7 @@ ;;; If you want to use this code or any part of CMU Common Lisp, please contact ;;; Scott Fahlman or slisp-group@cs.cmu.edu. ;;; -;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/tools/worldload.lisp,v 1.93 2001/07/10 22:50:46 pw Exp $ +;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/tools/worldload.lisp,v 1.94 2001/12/11 00:27:31 pmai Exp $ ;;; ;;; ********************************************************************** ;;; @@ -221,14 +221,15 @@ (setq ext:*ansi-defstruct-options-p* t) ;; ;; Save the lisp. If RUNTIME, there is nothing new to purify, so don't. - (let ((root-structures - #-(or runtime no-hemlock) `(ed ,hi::*global-command-table*) - #+(or runtime no-hemlock) ()) - (purify (not (featurep :runtime)))) - ;; the following features are only used to control the build - ;; process, so we remove them from the generated image - (dolist (f '(:runtime :no-compiler :no-pcl :no-clx :no-clm :no-hemlock)) - (setf *features* (remove f *features*))) - (save-lisp "lisp.core" - :root-structures root-structures - :purify purify))) + ;; the following features are only used to control the build + ;; process, so we remove them from the generated image + (setq *features* + (nreverse + (set-difference + *features* + '(:runtime :no-compiler :no-pcl :no-clx :no-clm :no-hemlock)))) + (save-lisp "lisp.core" + :root-structures + #-(or runtime no-hemlock) `(ed ,hi::*global-command-table*) + #+(or runtime no-hemlock) () + :purify #+runtime nil #-runtime t))