From 445ae87384a56fc70c19a6e7a553b3976484ec02 Mon Sep 17 00:00:00 2001 From: pmai <pmai> Date: Tue, 11 Dec 2001 00:27:31 +0000 Subject: [PATCH] We can't have complex forms in worldload, since we might be building a core without the compiler (e.g. runtime cores). Neither let nor dolist are allowed. The nreverse is there to keep the order of the remaining features unchanged, since set-difference reverses the list in the process. --- tools/worldload.lisp | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/tools/worldload.lisp b/tools/worldload.lisp index 6b91c4f80..66bc07c93 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)) -- GitLab