From f39bad0635e097b7b9a60853142915570e5f8b15 Mon Sep 17 00:00:00 2001 From: Christophe Rhodes Date: Tue, 7 Dec 2004 15:16:46 +0000 Subject: [PATCH] 0.8.17.23: Fix for printing 1.0d+23. Thinko in transcription, duly caught by Raymond Toy (bug report cmucl-help 2004-12) --- NEWS | 2 ++ src/code/print.lisp | 3 ++- tests/print.impure.lisp | 4 ++++ version.lisp-expr | 2 +- 4 files changed, 9 insertions(+), 2 deletions(-) diff --git a/NEWS b/NEWS index f8e1e80..e7a6a05 100644 --- a/NEWS +++ b/NEWS @@ -27,6 +27,8 @@ changes in sbcl-0.8.18 relative to sbcl-0.8.17: TRACE). * bug fix: (SETF MACRO-FUNCTION) now accepts an optional environment argument, which must always be NIL. (reported by Kalle Niemitalo) + * bug fix: printing 1.0d+23 no longer results in an error. + (reported by Rolf Wester for CMUCL; bug fix from Raymond Toy) * fixed some bugs related to Unicode integration: ** RUN-PROGRAM can allow its child to take input from a Lisp stream. (reported by Stefan Scholl) diff --git a/src/code/print.lisp b/src/code/print.lisp index d4b0dd1..4c945e8 100644 --- a/src/code/print.lisp +++ b/src/code/print.lisp @@ -1406,7 +1406,8 @@ (m+ m+ (* m+ print-base)) (m- m- (* m- print-base))) ((not (or (< (* (+ r m+) print-base) s) - (and high-ok (= (* (+ r m+) print-base) s)))) + (and (not high-ok) + (= (* (+ r m+) print-base) s)))) (values k (generate r s m+ m-))))))) (generate (r s m+ m-) (let (d tc1 tc2) diff --git a/tests/print.impure.lisp b/tests/print.impure.lisp index 73b87d8..76cb3b4 100644 --- a/tests/print.impure.lisp +++ b/tests/print.impure.lisp @@ -313,5 +313,9 @@ (assert (string= (format nil "~VR" nil 5) "five")) (assert (string= (format nil (formatter "~VR") nil 6) "six")) +;;; CSR inserted a bug into Burger & Dybvig's float printer. Caught +;;; by Raymond Toy +(assert (string= (format nil "~F" 1d23) "1.0d+23")) + ;;; success (quit :unix-status 104) diff --git a/version.lisp-expr b/version.lisp-expr index 8566c47..bd08f64 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.17.22" +"0.8.17.23" -- 1.7.10.4