0.8.14.5: Join the foreign legion!
[sbcl.git] / src / compiler / ir1-translators.lisp
index fc91bee..d954575 100644 (file)
         (unless (symbolp name)
           (fail "The local macro name ~S is not a symbol." name))
        (when (fboundp name)
-         (with-single-package-locked-error
-             (:symbol name "binding ~A as a local macro")))
+         (compiler-assert-symbol-home-package-unlocked
+           name "binding ~A as a local macro"))
         (unless (listp arglist)
           (fail "The local macro argument list ~S is not a list."
                 arglist))
         (unless (symbolp name)
           (fail "The local symbol macro name ~S is not a symbol." name))
        (when (or (boundp name) (eq (info :variable :kind name) :macro))
-         (with-single-package-locked-error
-             (:symbol name "binding ~A as a local symbol-macro")))
+         (compiler-assert-symbol-home-package-unlocked
+           name "binding ~A as a local symbol-macro"))
         (let ((kind (info :variable :kind name)))
           (when (member kind '(:special :constant))
             (fail "Attempt to bind a ~(~A~) variable with SYMBOL-MACROLET: ~S"
                 (vals (second spec)))))))
     (dolist (name (names))
       (when (eq (info :variable :kind name) :macro)
-       (with-single-package-locked-error
-           (:symbol name "lexically binding symbol-macro ~A"))))
+       (compiler-assert-symbol-home-package-unlocked
+         name "lexically binding symbol-macro ~A")))
     (values (vars) (vals))))
 
 (def-ir1-translator let ((bindings &body body) start next result)
       (let ((name (first def)))
        (check-fun-name name)
        (when (fboundp name)
-         (with-single-package-locked-error
-             (:symbol name "binding ~A as a local function")))
+         (compiler-assert-symbol-home-package-unlocked
+           name "binding ~A as a local function"))
        (names name)
        (multiple-value-bind (forms decls) (parse-body (cddr def))
          (defs `(lambda ,(second def)