0.8.21.16:
[sbcl.git] / src / cold / shared.lisp
index 5f86752..c6f9922 100644 (file)
 
 (in-package "SB-COLD")
 
-;;; FIXME: This is embarassing -- SBCL violates SBCL style-package
-;;; locks on the host lisp. Rather then find and fix all the cases
-;;; right now, let's just remain self-hosting. The problems at least
-;;; involve a few defvars and local macros with names in the CL
-;;; package.
-#+sbcl
-(let ((plp (find-symbol PACKAGE-LOCKED-P :sb-ext)))
-  (when (and plp (fboundp plp))
-    (dolist (p (list-all-packages))
-      (sb-ext::unlock-package p))))
-
 ;;; prefixes for filename stems when cross-compiling. These are quite arbitrary
 ;;; (although of course they shouldn't collide with anything we don't want to
 ;;; write over). In particular, they can be either relative path names (e.g.
     (setf tmp-obj
          ;; (Note that this idiom is taken from the ANSI
          ;; documentation for TRUENAME.)
-         (with-open-file (stream tmp-obj :direction :output)
+         (with-open-file (stream tmp-obj
+                                  :direction :output
+                                  ;; Compilation would overwrite the
+                                  ;; temporary object anyway and overly
+                                  ;; strict implementations default
+                                  ;; to :ERROR.
+                                  :if-exists :supersede)
            (close stream)
            (truename stream)))
     ;; and some compilers (e.g. OpenMCL) will complain if they're