From bb3c99a27a480d472752d581521278ee10f3ddd4 Mon Sep 17 00:00:00 2001 From: Christophe Rhodes Date: Thu, 3 Jun 2004 09:35:37 +0000 Subject: [PATCH] 0.8.10.79: Log accumulated bugs --- BUGS | 74 +++++++++++++++++++++++++++++++++++++++++++++++++++++ version.lisp-expr | 2 +- 2 files changed, 75 insertions(+), 1 deletion(-) diff --git a/BUGS b/BUGS index ad88107..dff6252 100644 --- a/BUGS +++ b/BUGS @@ -1433,3 +1433,77 @@ WORKAROUND: (defstruct (bar (:include foo))) (sb-mop:class-direct-subclasses (find-class 'foo)) returns NIL, rather than a singleton list containing the BAR class. + +332: "fasl stack inconsistency in structure redefinition" + (reported by Tim Daly Jr sbcl-devel 2004-05-06) + Even though structure redefinition is undefined by the standard, the + following behaviour is suboptimal: running + (defun stimulate-sbcl () + (let ((filename (format nil "/tmp/~A.lisp" (gensym)))) + ;;create a file which redefines a structure incompatibly + (with-open-file (f filename :direction :output :if-exists :supersede) + (print '(defstruct astruct foo) f) + (print '(defstruct astruct foo bar) f)) + ;;compile and load the file, then invoke the continue restart on + ;;the structure redefinition error + (handler-bind ((error (lambda (c) (continue c)))) + (load (compile-file filename))))) + (stimulate-sbcl) + and choosing the CONTINUE restart yields the message + debugger invoked on a SB-INT:BUG in thread 27726: + fasl stack not empty when it should be + +333: "CHECK-TYPE TYPE-ERROR-DATUM place" + (reported by Tony Martinez sbcl-devel 2004-05-23) + When CHECK-TYPE signals a TYPE-ERROR, the TYPE-ERROR-DATUM holds the + lisp symbolic place in question rather than the place's value. This + seems wrong. + +334: "COMPUTE-SLOTS used to add slots to classes" + (reported by Bruno Haible sbcl-devel 2004-06-01) + a. Adding a local slot does not work: + (use-package "SB-PCL") + (defclass b (a) ()) + (defmethod compute-slots ((class (eql (find-class 'b)))) + (append (call-next-method) + (list (make-instance 'standard-effective-slot-definition + :name 'y + :allocation :instance)))) + (defclass a () ((x :allocation :class))) + ;; A should now have a shared slot, X, and a local slot, Y. + (mapcar #'slot-definition-location (class-slots (find-class 'b))) + yields + There is no applicable method for the generic function + # + when called with arguments + (NIL). + + b. Adding a class slot does not work: + (use-package "SB-PCL") + (defclass b (a) ()) + (defmethod compute-slots ((class (eql (find-class 'b)))) + (append (call-next-method) + (list (make-instance 'standard-effective-slot-definition + :name 'y + :allocation :class)))) + (defclass a () ((x :allocation :class))) + ;; A should now have two shared slots, X and Y. + (mapcar #'slot-definition-location (class-slots (find-class 'b))) + yields + There is no applicable method for the generic function + # + when called with arguments + (NIL). + +335: "ATANH completely broken" + a. (reported by Peter Graves sbcl-devel 2004-06-01) + (atanh #c(1 2)), and more generally atanh of any complex with real + part 1, computes entirely the wrong answer. + b. (discovered by CSR when investigating a.) + (atanh most-positive-double-float), and more generally atanh of any + number with magnitude larger than + sqrt(most-positive-double-float), computes a number whose real + part is the imaginary part of the correct answer, and whose + imaginary part is the real part of the correct answer. + (fixes for both of these were sent CSR sbcl-devel 2004-06-02, to be merged + post-0.8.11) diff --git a/version.lisp-expr b/version.lisp-expr index 79bb49f..c1c75ac 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.8.10.78" +"0.8.10.79" -- 1.7.10.4