0.8alpha.0.30:
authorChristophe Rhodes <csr21@cam.ac.uk>
Thu, 15 May 2003 16:03:33 +0000 (16:03 +0000)
committerChristophe Rhodes <csr21@cam.ac.uk>
Thu, 15 May 2003 16:03:33 +0000 (16:03 +0000)
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.

src/pcl/methods.lisp
version.lisp-expr

index dff22ed..66d873e 100644 (file)
 
 (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))))
index 6f6677b..d6a5501 100644 (file)
@@ -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"