From: Christophe Rhodes Date: Thu, 15 May 2003 16:03:33 +0000 (+0000) Subject: 0.8alpha.0.30: X-Git-Url: http://repo.macrolet.net/gitweb/?a=commitdiff_plain;h=2c668ec79541ced67b8771dc7f41f6028d1f1c43;p=sbcl.git 0.8alpha.0.30: Bandage over compiler overenthusiasm for EQL-specialized methods ... reduction in annoyance for contrib/ users probably more important than informing developers that they should be using EQL on SINGLE-FLOAT, not T, for best performance. --- diff --git a/src/pcl/methods.lisp b/src/pcl/methods.lisp index dff22ed..66d873e 100644 --- a/src/pcl/methods.lisp +++ b/src/pcl/methods.lisp @@ -1182,15 +1182,19 @@ (defmacro mlookup (key info default &optional eq-p type) (unless (or (eq eq-p t) (null eq-p)) - (error "Invalid eq-p argument")) + (bug "Invalid eq-p argument: ~S" eq-p)) (ecase type (:simple - `(if (,(if eq-p 'eq 'eql) ,key (car ,info)) + `(if (locally + (declare (optimize (inhibit-warnings 3))) + (,(if eq-p 'eq 'eql) ,key (car ,info))) (cdr ,info) ,default)) (:assoc `(dolist (e ,info ,default) - (when (,(if eq-p 'eq 'eql) (car e) ,key) + (when (locally + (declare (optimize (inhibit-warnings 3))) + (,(if eq-p 'eq 'eql) (car e) ,key)) (return (cdr e))))) (:hash-table `(gethash ,key ,info ,default)))) diff --git a/version.lisp-expr b/version.lisp-expr index 6f6677b..d6a5501 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.8alpha.0.29" +"0.8alpha.0.30"