diff --git a/code/format.lisp b/code/format.lisp index ba5cc4ae9b35db82da69cbf826ca564572ee7327..5b5103a281444c1a2718fea527a39f3c6d76104b 100644 --- a/code/format.lisp +++ b/code/format.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/format.lisp,v 1.80 2008/01/30 15:35:29 rtoy Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/format.lisp,v 1.81 2008/01/31 18:24:05 rtoy Exp $") ;;; ;;; ********************************************************************** ;;; @@ -1444,16 +1444,11 @@ (format t "ww = ~A~%" ww) (format t "dd = ~A~%" dd)) (cond ((<= 0 dd d) - ;; Figure out how many fraction digits we really want - ;; to print. If we can, use dd. If not, adjust it - ;; so that we print as many fraction digits as - ;; possible without exceeding the width constraint, - ;; if any. - (let* ((ndigits (if ww - (max 0 (min dd (- ww 1 n))) - dd)) - (char (if (format-fixed-aux stream number ww - ndigits + ;; Use dd fraction digits, even if that would cause + ;; the width to be exceeded. We choose accuracy over + ;; width in this case. + (let* ((char (if (format-fixed-aux stream number ww + dd nil ovf pad atsign) ovf