0.7.4.11:
authorChristophe Rhodes <csr21@cam.ac.uk>
Sat, 1 Jun 2002 14:21:59 +0000 (14:21 +0000)
committerChristophe Rhodes <csr21@cam.ac.uk>
Sat, 1 Jun 2002 14:21:59 +0000 (14:21 +0000)
(0.7.4.10 was checked in, but version.lisp-expr wasn't updated)
Remove apparently useless %CHECK-BOUND from transforms for
HAIRY-DATA-VECTOR-{REF,SET}.
... useless and wrong, as they were (a) testing for the wrong thing and
(b) presumably being flushed.
... the mystery deepens, though, as this improves sbcl's performance on
the CASCOR and FIB benchmarks to near-parity with CMUCL.
Explanations welcome.

BUGS
src/compiler/generic/vm-tran.lisp
version.lisp-expr

diff --git a/BUGS b/BUGS
index 69f27e6..f4785b5 100644 (file)
--- a/BUGS
+++ b/BUGS
@@ -1258,6 +1258,29 @@ WORKAROUND:
   code. Since then the warning has been downgraded to STYLE-WARNING, 
   so it's still a bug but at least it's a little less annoying.
 
+174:
+  The error message from attempting to use a #\Return format
+  directive:
+    (format nil "~^M") ; replace "^M" with a literal #\Return
+      debugger invoked on condition of type SB-FORMAT::FORMAT-ERROR:
+      error in format:                  unknown format directive
+      ~
+       ^
+  is not terribly helpful; this is more noticeable than parallel cases
+  with e.g. #\Backspace because of the differing newline conventions
+  on various operating systems. (reported by Harald Hanche-Olsen on
+  cmucl-help 2002-05-31)
+
+175:
+  sbcl's CHANGE-CLASS does not accept and use initargs, so that e.g.:
+    (defclass foo () ((a :accessor a :initarg :a)))
+    (defclass bar () ((a :accessor a :initarg :a)
+                      (b :accessor b :initarg :b)))
+    (change-class (make-instance 'foo :a 1) 'bar :b 2)
+  should return an instance of class BAR with its A slot-value being 1
+  and its B slot-value being 2; at present (sbcl-0.7.4.8), it signals
+  an error.
+
 DEFUNCT CATEGORIES OF BUGS
   IR1-#:
     These labels were used for bugs related to the old IR1 interpreter.
index 9f22eb0..e155ac2 100644 (file)
@@ -66,7 +66,6 @@
               (let ((array array))
                 (declare (type (simple-array ,element-type-specifier 1)
                                array))
-                (%check-bound array 0 index)
                 (values array index)))
         (declare (type (simple-array ,element-type-specifier 1) array))
         (data-vector-ref array index)))))
               (let ((array array))
                 (declare (type (simple-array ,element-type-specifier 1)
                                array))
-                (%check-bound array 0 index)
                 (values array index)))
         (data-vector-set (truly-the (simple-array ,element-type-specifier 1)
                                     array)
index 05e03a5..104c2fc 100644 (file)
@@ -18,4 +18,4 @@
 ;;; for internal versions, especially for internal versions off the
 ;;; main CVS branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
 
-"0.7.4.9"
+"0.7.4.11"