[git] CMU Common Lisp branch master updated. snapshot-2014-05-6-gc34d88b

Raymond Toy rtoy at common-lisp.net
Tue May 13 03:06:47 UTC 2014


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMU Common Lisp".

The branch, master has been updated
       via  c34d88b5fb3e8a27a3ac5605f96ddd77aa29ae3b (commit)
      from  7534898c2e414172cda3d7d8486a868038420398 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit c34d88b5fb3e8a27a3ac5605f96ddd77aa29ae3b
Author: Raymond Toy <toy.raymond at gmail.com>
Date:   Mon May 12 20:06:36 2014 -0700

    Fix bug in printing most-negative-fixnum
    
     * src/code/print.lisp:
       * Type declaration in {{{SUB-OUTPUT-INTEGER}}} was incorrect
         because we want to be able to print
         {{{(- most-negative-fixnum)}}}.
    
     * tests/printer.lisp:
       * Add test for this.

diff --git a/src/code/print.lisp b/src/code/print.lisp
index 999bc94..f2a1205 100644
--- a/src/code/print.lisp
+++ b/src/code/print.lisp
@@ -1297,7 +1297,7 @@
       (write-char #\. stream)))
 
 (defun sub-output-integer (integer stream)
-  (declare (type (and fixnum unsigned-byte) integer))
+  (declare (type (integer 0 #.(- most-negative-fixnum)) integer))
   (let ((quotient 0)
 	(remainder 0))
     (declare (fixnum quotient remainder))
diff --git a/tests/printer.lisp b/tests/printer.lisp
index b511f0b..5c95844 100644
--- a/tests/printer.lisp
+++ b/tests/printer.lisp
@@ -111,3 +111,5 @@
     (assert-equal "Scale factor  6: | 314159.0e-05|" (test-scale 11))
     (assert-equal "Scale factor  7: | 3141590.e-06|" (test-scale 12))))
 
+(define-test sub-output-integer.1
+    (assert-prints "-536870912" (princ most-negative-fixnum)))

-----------------------------------------------------------------------

Summary of changes:
 src/code/print.lisp |    2 +-
 tests/printer.lisp  |    2 ++
 2 files changed, 3 insertions(+), 1 deletion(-)


hooks/post-receive
-- 
CMU Common Lisp



More information about the cmucl-cvs mailing list