Update of /cvsroot/sbcl/sbcl/tests
In directory usw-pr-cvs1:/tmp/cvs-serv5275/tests
Modified Files:
clos.impure.lisp type.impure.lisp
Log Message:
0.7.9.12:
Fix for BUG 140 (not opening bug 176 this time) from Gerd Moellmann,
on cmucl-imp 86fzuwdkmy.fsf@... and
private communication;
entomotomy reference: redefined-classes-and-subtypep
... slightly kludgy logic in FORCE-CACHE-FLUSHES
... break me if you can
BUGS frobbage, too; delete several old bugs that are probably
fixed now.
Index: clos.impure.lisp
===================================================================
RCS file: /cvsroot/sbcl/sbcl/tests/clos.impure.lisp,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -d -r1.17 -r1.18
--- clos.impure.lisp 29 Oct 2002 10:02:31 -0000 1.17
+++ clos.impure.lisp 29 Oct 2002 12:48:21 -0000 1.18
@@ -327,6 +327,21 @@
(assert (eq (no-next-method-test 1) 'success))
(assert (null (ignore-errors (no-next-method-test 'foo))))
+;;; regression test for bug 176, following a fix that seems
+;;; simultaneously to fix 140 while not exposing 176 (by Gerd
+;;; Moellmann, merged in sbcl-0.7.9.12).
+(dotimes (i 10)
+ (let ((lastname (intern (format nil "C176-~D" (1- i))))
+ (name (intern (format nil "C176-~D" i))))
+ (eval `(defclass ,name
+ (,@(if (= i 0) nil (list lastname)))
+ ()))
+ (eval `(defmethod initialize-instance :after ((x ,name) &rest any)
+ (declare (ignore any))))))
+(defclass b176 () (aslot-176))
+(defclass c176-0 (b176) ())
+(assert (= 1 (setf (slot-value (make-instance 'c176-9) 'aslot-176) 1)))
+
;;;; success
(sb-ext:quit :unix-status 104)
Index: type.impure.lisp
===================================================================
RCS file: /cvsroot/sbcl/sbcl/tests/type.impure.lisp,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -d -r1.22 -r1.23
--- type.impure.lisp 21 Aug 2002 10:30:08 -0000 1.22
+++ type.impure.lisp 29 Oct 2002 12:48:21 -0000 1.23
@@ -339,14 +339,14 @@
(tests-of-inline-type-tests)
(format t "~&/done with compiled (TESTS-OF-INLINE-TYPE-TESTS)~%")
-#|| Pending fix for bug 176, bug 140 has been unfixed
;;; Redefinition of classes should alter the type hierarchy (BUG 140):
(defclass superclass () ())
+(defclass maybe-subclass () ())
+(assert-nil-t (subtypep 'maybe-subclass 'superclass))
(defclass maybe-subclass (superclass) ())
(assert-t-t (subtypep 'maybe-subclass 'superclass))
(defclass maybe-subclass () ())
(assert-nil-t (subtypep 'maybe-subclass 'superclass))
-||#
;;; Prior to sbcl-0.7.6.27, there was some confusion in ARRAY types
;;; specialized on some as-yet-undefined type which would cause this
|