(I didn't have convenient access to the Internet for almost a week, so
[sbcl.git] / src / code / package.lisp
index 8af6ad8..e71f345 100644 (file)
@@ -56,8 +56,9 @@
 ;;; KLUDGE: We use DEF!STRUCT to define this not because we need to
 ;;; manipulate target package objects on the cross-compilation host,
 ;;; but only because its MAKE-LOAD-FORM function needs to be hooked
-;;; into the pre-CLOS DEF!STRUCT MAKE-LOAD-FORM system. The DEF!STRUCT
-;;; side-effect of defining a new PACKAGE type on the
+;;; into the pre-CLOS DEF!STRUCT MAKE-LOAD-FORM system so that we can
+;;; compile things like IN-PACKAGE in warm init before CLOS is set up.
+;;; The DEF!STRUCT side effect of defining a new PACKAGE type on the
 ;;; cross-compilation host is just a nuisance, and in order to avoid
 ;;; breaking the cross-compilation host, we need to work around it
 ;;; around by putting the new PACKAGE type (and the PACKAGEP predicate
         (inherited-symbol-p (gensym))
         (BLOCK (gensym)))
     `(let* ((,these-packages ,package-list)
-           (,packages `,(mapcar #'(lambda (package)
-                                    (if (packagep package)
-                                        package
-                                        (find-package package)))
+           (,packages `,(mapcar (lambda (package)
+                                  (if (packagep package)
+                                      package
+                                      (find-package package)))
                                 (if (consp ,these-packages)
                                     ,these-packages
                                     (list ,these-packages))))
                                    (car ,',packages))))
                     (when ,symbols
                       (setf ,',vector (package-hashtable-table ,symbols))
-                      (setf ,',hash-vector (package-hashtable-hash ,symbols)))))
+                      (setf ,',hash-vector
+                            (package-hashtable-hash ,symbols)))))
                 (:external
                  `(let ((,symbols (package-external-symbols
                                    (car ,',packages))))