X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fmeta-vmdef.lisp;h=41270d2967fe8b014f31bcf81a8f6ca54cde16a8;hb=279283bc1724b60ef9ebbf31ab4837061989be18;hp=3d5dfef022d3b13ba6611e0c661778379f2eda9a;hpb=d604a358d8e5eb5587989e0a4f1d31dbe6ac5ffe;p=sbcl.git diff --git a/src/compiler/meta-vmdef.lisp b/src/compiler/meta-vmdef.lisp index 3d5dfef..41270d2 100644 --- a/src/compiler/meta-vmdef.lisp +++ b/src/compiler/meta-vmdef.lisp @@ -886,13 +886,13 @@ (defvar *parse-vop-operand-count*) (defun make-operand-parse-temp () - ;; FIXME: potentially causes breakage in contribs from locked - ;; packages. - (intern (format nil "OPERAND-PARSE-TEMP-~D" *parse-vop-operand-count*) - (symbol-package '*parse-vop-operand-count*))) + (without-package-locks + (intern (format nil "OPERAND-PARSE-TEMP-~D" *parse-vop-operand-count*) + (symbol-package '*parse-vop-operand-count*)))) (defun make-operand-parse-load-tn () - (intern (format nil "OPERAND-PARSE-LOAD-TN-~D" *parse-vop-operand-count*) - (symbol-package '*parse-vop-operand-count*))) + (without-package-locks + (intern (format nil "OPERAND-PARSE-LOAD-TN-~D" *parse-vop-operand-count*) + (symbol-package '*parse-vop-operand-count*)))) ;;; Given a list of operand specifications as given to DEFINE-VOP, ;;; return a list of OPERAND-PARSE structures describing the fixed @@ -1879,7 +1879,7 @@ ;;; beginning with T specifies a default. If it appears, it must be ;;; last. If no default is specified, and no clause matches, then an ;;; error is signalled. -(def!macro sc-case (tn &rest forms) +(def!macro sc-case (tn &body forms) (let ((n-sc (gensym)) (n-tn (gensym))) (collect ((clauses))