0.8.8.20:
authorChristophe Rhodes <csr21@cam.ac.uk>
Mon, 8 Mar 2004 22:14:31 +0000 (22:14 +0000)
committerChristophe Rhodes <csr21@cam.ac.uk>
Mon, 8 Mar 2004 22:14:31 +0000 (22:14 +0000)
Hey look!  An ANSI bug that's more annoying than (vector nil)!
... printing #\Space is defined to yield #\
... did you see the whitespace at the end of that line?

NEWS
src/code/print.lisp
version.lisp-expr

diff --git a/NEWS b/NEWS
index ea00cd5..04f7666 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -2345,6 +2345,8 @@ changes in sbcl-0.8.9 relative to sbcl-0.8.8:
     ** Printing symbols with *PRINT-CASE* :CAPITALIZE respects the
        description of determination of which consecutive characters
        constitute a word.
+    ** Printing the "Space" character with escaping on now yields "#\\ ", 
+       rather than "#\\Space", as mandated by ANSI 22.1.3.2.
 
 planned incompatible changes in 0.8.x:
   * (not done yet, but planned:) When the profiling interface settles
index 9682372..d27924a 100644 (file)
 ;;; the character name or the character in the #\char format.
 (defun output-character (char stream)
   (if (or *print-escape* *print-readably*)
-      (let ((name (char-name char)))
+      (let ((graphicp (graphic-char-p char))
+           (name (char-name char)))
        (write-string "#\\" stream)
-       (if name
+       (if (and name (not graphicp))
            (quote-string name stream)
            (write-char char stream)))
       (write-char char stream)))
index a64e60f..60cb633 100644 (file)
@@ -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.8.19"
+"0.8.8.20"