"Oops"
... as reported on #lisp IRC by pfdietz, FILL would on occasion
consume all available CPU and RAM...
... unbreak the new vectorized transform by returning the
sequence argument rather than NIL.
((= index end)
(let ((place (* times 4)))
(declare (fixnum place))
- (dotimes (j rem)
+ (dotimes (j rem sequence)
(declare (index j))
(setf (schar sequence (the index (+ place j))) item))))
(declare (optimize (speed 3) (safety 0))
(assert (equal (stable-sort (list 1 2 3 -3 -2 -1) '< :key 'abs)
'(1 -1 2 -2 3 -3)))
+;;; CSR broke FILL by not returning the sequence argument in a transform.
+(let* ((s1 (copy-seq "abcde"))
+ (s2 (fill s1 #\z)))
+ (assert s2)
+ (assert (string= s2 "zzzzz")))
;;; 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.3.43"
+"0.8.3.44"