maybe the non-integral value should be propagated through the
pprinter and only truncated at output? (So that indenting by 1/2
then 3/2 would indent by two spaces, not one?)
+
+350: heap overflow when printing bignums
+ (reported by Bruno Haible 2004-10-08)
+ In sbcl-0.8.15.18,
+ * (DEFPARAMETER *BIG* (ASH 1 1000000))
+ *BIG*
+ * (PRINT *BIG*)
+ Argh! gc_find_freeish_pages failed (restart_page), nbytes=110152.
+ It should be straightforward to push the heap overflow threshold
+ up to much larger bignums; CSR pointed out it would help to use a
+ bignum-printing algorithm which bisected the printed number,
+ rather than stripping off digits one by one.
+
+351: suboptimal error handling/reporting when compiling (PUSH (LET ...))
+ In sbcl-0.8.15.18,
+ * (defvar *b*)
+ *B*
+ * (defun oops ()
+ (push *b*
+ (let ((b *b*))
+ (aref b 1))))
+ causes the compiler to die with a TYPE-ERROR in SB-C::EXTRACT-LET-VARS,
+ The value #:G4 is not of type LIST.
+ Since the (LET ...) expression is being misused in PUSH as a
+ SETFable place, it would be more helpful to fail as in
+ * (defun oops2 () (setf (let ((b *b*)) (aref b 1)) *b*))
+ with compiler conditions errors like
+ ; in: LAMBDA NIL
+ ; ((B *B*))
+ ; caught ERROR:
+ ; illegal function call
+ and
+ ; caught WARNING:
+ ; The function (SETF LET) is undefined, and its name is reserved
+ ; by ANSI CL so that even if it were defined later, the code
+ ; doing so would not be portable.
;;; 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.15.18"
+"0.8.15.19"