From: Alexey D. <ade...@us...> - 2003-09-09 07:10:31
|
Update of /cvsroot/sbcl/sbcl/tests In directory sc8-pr-cvs1:/tmp/cvs-serv7267/tests Modified Files: compiler.impure-cload.lisp reader.pure.lisp Log Message: 0.8.3.47: * Fix bugs in PARSE-INTEGER related to the index in :JUNK-ALLOWED NIL case and to displaced string processing reported by Paul Dietz; * fix bug 145b: in CONVERT-MEMBER-TYPE bail out to (TYPE-OF MEMBER) in difficult cases. Index: compiler.impure-cload.lisp =================================================================== RCS file: /cvsroot/sbcl/sbcl/tests/compiler.impure-cload.lisp,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- compiler.impure-cload.lisp 29 Aug 2003 12:45:46 -0000 1.5 +++ compiler.impure-cload.lisp 9 Sep 2003 07:09:50 -0000 1.6 @@ -156,5 +156,10 @@ (funcall (eval ''list) y (+ y 2d0) (* y 3d0))))) (assert (raises-error? (bug233a 4) type-error)) +;;; compiler failure +(defun bug145b (x) + (declare (type (double-float -0d0) x)) + (declare (optimize speed)) + (+ x (sqrt (log (random 1d0))))) (sb-ext:quit :unix-status 104) Index: reader.pure.lisp =================================================================== RCS file: /cvsroot/sbcl/sbcl/tests/reader.pure.lisp,v retrieving revision 1.7 retrieving revision 1.8 diff -u -d -r1.7 -r1.8 --- reader.pure.lisp 22 Jul 2003 05:45:25 -0000 1.7 +++ reader.pure.lisp 9 Sep 2003 07:09:50 -0000 1.8 @@ -90,4 +90,20 @@ (handler-case (with-input-from-string (s "cl:") (read s)) (end-of-file (c) 'good)) - 'good)) \ No newline at end of file + 'good)) + +;;; Bugs found by Paul Dietz +(assert (equal (multiple-value-list + (parse-integer " 123 ")) + '(123 12))) + +(let* ((base "xxx 123 yyy") + (intermediate (make-array 8 :element-type (array-element-type base) + :displaced-to base + :displaced-index-offset 2)) + (string (make-array 6 :element-type (array-element-type base) + :displaced-to intermediate + :displaced-index-offset 1))) + (assert (equal (multiple-value-list + (parse-integer string)) + '(123 6)))) |