From: Christophe Rhodes Date: Thu, 4 Aug 2005 09:31:42 +0000 (+0000) Subject: 0.9.3.26: X-Git-Url: http://repo.macrolet.net/gitweb/?a=commitdiff_plain;h=609612f7a0817cdb0d3ec59d5aebb0894606b3f6;p=sbcl.git 0.9.3.26: Fix package locks / vops interaction (Zach Beane sbcl-devel 2005-07-24) ... just WITHOUT-PACKAGE-LOCKS. --- diff --git a/NEWS b/NEWS index a69682a..4a3b2b9 100644 --- a/NEWS +++ b/NEWS @@ -6,17 +6,19 @@ changes in sbcl-0.9.4 relative to sbcl-0.9.3: with non-standard methods for COMPUTE-APPLICABLE-METHODS no longer make invalid assumptions about method precedence order. (reported by Bruno Haible) + * bug fix: degree sign () could not be encoded in KOI8-R. + * bug fix: correct pathname printing with printer escaping is on. + (thanks to Kevin Reid) + * bug fix: complex VOP definitions in "user-space" no longer trigger + package locks. (reported by Zach Beane) * optimizations: REMOVE-DUPLICATES now runs in linear time on lists in some cases. This partially fixes bug 384. * flush all standard streams before prompting in the REPL and the - debugger - * eof selects abort in the debugger + debugger. + * minor incompatible change: eof selects abort in the debugger. * minor incompatible change: *INVOKE-DEBUGGER-HOOK* is run before *DEBUGGER-HOOK* => *DEBUGGER-HOOK* is not run when the debugger - is disabled - * bug fix: degree sign () could not be encoded in KOI8-R. - * bug fix: correct pathname printing with printer escaping is on. - (thanks to Kevin Reid) + is disabled. * threads ** bug fix: release-foreground doesn't choke on session lock if there is only one thread in the session diff --git a/src/compiler/meta-vmdef.lisp b/src/compiler/meta-vmdef.lisp index 3d5dfef..5515de7 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 diff --git a/version.lisp-expr b/version.lisp-expr index 3e81dbb..6fe64ba 100644 --- a/version.lisp-expr +++ b/version.lisp-expr @@ -17,4 +17,4 @@ ;;; checkins which aren't released. (And occasionally for internal ;;; versions, especially for internal versions off the main CVS ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".) -"0.9.3.25" +"0.9.3.26"