0.8.10.26:
[sbcl.git] / BUGS
diff --git a/BUGS b/BUGS
index 2304eb1..175889a 100644 (file)
--- a/BUGS
+++ b/BUGS
@@ -736,7 +736,6 @@ WORKAROUND:
   all of the arguments are circular is probably desireable).
 
 213: "Sequence functions and type checking"
-  a. (fixed in 0.8.4.36)
   b. MAP, when given a type argument that is SUBTYPEP LIST, does not
      check that it will return a sequence of the given type.  Fixing
      it along the same lines as the others (cf. work done around
@@ -1343,9 +1342,6 @@ WORKAROUND:
 
   (probably related to the bug 280.)
 
-313: "source-transforms are Lisp-1"
-  (fixed in 0.8.10.2)
-
 314: "LOOP :INITIALLY clauses and scope of initializers"
   reported by Bruno Haible sbcl-devel "various SBCL bugs" from CLISP
   test suite, originally by Thomas F. Burdick.
@@ -1380,17 +1376,6 @@ WORKAROUND:
   the heap and certainly confuses the world if that string is used by
   C code.
 
-316: "SHIFTF and multiple values"
-  reported by Bruno Haible sbcl-devel "various SBCL bugs" from CLISP
-  test suite.
-    (shiftf (values x y) (values y x))
-  gives an error in sbcl-0.8.10.
-
-  Parts of the explanation of SHIFTF in ANSI CL talk about multiple
-  store variables, and the X3J13 vote
-  SETF-MULTIPLE-STORE-VARIABLES:ALLOW also says that SHIFTF should
-  support multiple value places.
-
 317: "FORMAT of floating point numbers"
   reported by Bruno Haible sbcl-devel "various SBCL bugs" from CLISP
   test suite.
@@ -1422,24 +1407,6 @@ WORKAROUND:
     #(1 2 ((SB-IMPL::|,|) + 2 2) 4)
   which probably isn't intentional.
 
-320: "shared to local slot in class redefinition"
-  reported by Bruno Haible sbcl-devel "various SBCL bugs" from CLISP
-  test suite.
-    ;; Shared slot becomes local.
-    ;; 4.3.6.1.: "The value of a slot that is specified as shared in
-    ;; the old class and as local in the new class is retained."
-    (multiple-value-bind (value condition)
-        (ignore-errors
-          (defclass foo85a () 
-            ((size :initarg :size :initform 1 :allocation :class)))
-          (defclass foo85b (foo85a) ())
-          (setq i (make-instance 'foo85b))
-          (defclass foo85a () ((size :initarg :size :initform 2) (other)))
-          (slot-value i 'size))
-      (list value (type-of condition)))
-  should return (1 NULL) but returns (2 NULL) in sbcl-0.8.10.  See
-  ensuing discussion sbcl-devel for how to deal with this.
-
 321: "DEFINE-METHOD-COMBINATION lambda list parsing"
   reported by Bruno Haible sbcl-devel "various SBCL bugs" from CLISP
   test suite.
@@ -1456,10 +1423,23 @@ WORKAROUND:
         (vector-push-extend (list 'string p1 p2) s))
       (:method ((p1 t) (p2 t) s) (vector-push-extend (list t p1 p2) s)))
 
-322: "DEFSTRUCT :TYPE LIST predicate and improper lists"
-  reported by Bruno Haible sbcl-devel "various SBCL bugs" from CLISP
-  test suite.
-    (defstruct (a (:type list) (:initial-offset 5) :named))
-    (defstruct (b (:type list) (:initial-offset 2) :named (:include a)))
-    (b-p (list* nil nil nil nil nil 'foo73 nil 'tail))
-  gives an error in sbcl-0.8.10
+323: "REPLACE, BIT-BASH and large strings"
+  The transform for REPLACE on simple-base-strings uses BIT-BASH, which
+  at present has an upper limit in size.  Consequently, in sbcl-0.8.10
+    (defun foo ()
+      (declare (optimize speed (safety 1)))
+      (let ((x (make-string 140000000))
+            (y (make-string 140000000)))
+        (length (replace x y))))
+    (foo)
+  gives 
+    debugger invoked on a TYPE-ERROR in thread 2412:
+      The value 1120000000 is not of type (MOD 536870911).
+  (see also "more and better sequence transforms" sbcl-devel 2004-05-10)
+
+324: "STREAMs and :ELEMENT-TYPE with large bytesize"
+  In theory, (open foo :element-type '(unsigned-byte <x>)) should work
+  for all positive integral <x>.  At present, it only works for <x> up
+  to about 1024 (and similarly for signed-byte), so
+    (open "/dev/zero" :element-type '(unsigned-byte 1025))
+  gives an error in sbcl-0.8.10.