Fix POSITION on displaced vectors (PFD tests).
... whoops!
... (you know, it's good not to have to think of a tagline for
commits once in a while :-)
+changes in sbcl-0.8.16 relative to sbcl-0.8.15:
+ * fixed some bugs revealed by Paul Dietz' test suite:
+ ** POSITION on displaced vectors with non-zero displacement
+ returns the right answer.
+
changes in sbcl-0.8.15 relative to sbcl-0.8.14:
* incompatible change: SB-INT:*BEFORE-SAVE-INITIALIZATIONS* and
SB-INT:*AFTER-SAVE-INITIALIZATIONS* have been renamed
(simple-base-string (frob2))
(t (vector*-frob sequence))))
(declare (type (or index null) p))
- (values f (and p (the index (+ p offset))))))))))
+ (values f (and p (the index (- p offset))))))))))
(defun %find-position (item sequence-arg from-end start end key test)
(macrolet ((frob (sequence from-end)
`(%find-position item ,sequence
(s2 (fill s1 #\z)))
(assert s2)
(assert (string= s2 "zzzzz")))
+
+;;; POSITION on dispaced arrays with non-zero offset has been broken
+;;; for quite a while...
+(let ((fn (compile nil '(lambda (x) (position x)))))
+ (let* ((x #(1 2 3))
+ (y (make-array 2 :displaced-to x :displaced-index-offset 1)))
+ (assert (= (position 2 y) 0))))
;;; 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"
+"0.8.15.1"