diff --git a/compiler/vmdef.lisp b/compiler/vmdef.lisp index e81e6cd8ddb54856b43ac1d26029a7859a3e0171..9f3849684404d031027d826138ab9148dc324c92 100644 --- a/compiler/vmdef.lisp +++ b/compiler/vmdef.lisp @@ -440,17 +440,17 @@ ;;; (macrolet ((frob (name sc-numbers-fun compile-time-also) - (eval-when (load eval ,@(when compile-time-also '(compile))) - (defun ,name (sc ptype) - (declare (type sc sc) (type primitive-type ptype)) - (let ((scn (sc-number sc))) - (dolist (allowed (primitive-type-scs ptype) nil) - (when (eql allowed scn) - (return t)) - (let ((allowed-sc (svref (,sc-numbers-fun *backend*) allowed))) - (when (or (member sc (sc-alternate-scs allowed-sc)) - (member sc (sc-constant-scs allowed-sc))) - (return t))))))))) + `(eval-when (load eval ,@(when compile-time-also '(compile))) + (defun ,name (sc ptype) + (declare (type sc sc) (type primitive-type ptype)) + (let ((scn (sc-number sc))) + (dolist (allowed (primitive-type-scs ptype) nil) + (when (eql allowed scn) + (return t)) + (let ((allowed-sc (svref (,sc-numbers-fun *backend*) allowed))) + (when (or (member sc (sc-alternate-scs allowed-sc)) + (member sc (sc-constant-scs allowed-sc))) + (return t))))))))) (frob sc-allowed-by-primitive-type backend-sc-numbers nil) (frob meta-sc-allowed-by-primitive-type backend-meta-sc-numbers t))