When the transform for FILL fires, and the type of initial-element
has not yet been propagated, so VECTOR-FILL* fires instead of a more
specific transform (which currently exist only for
SIMPLE-BASE-STRINGs and SIMPLE-BIT-VECTORs.)
Annotate the type with THE and the SAETP-SPECIFIER so the most
specific transform can fire.
Reported by Stas Boukarev.
`(let ((array ,creation-form))
(multiple-value-bind (vector)
(%data-vector-and-index array 0)
- (fill vector initial-element))
+ (fill vector (the ,(sb!vm:saetp-specifier saetp) initial-element)))
array)))))
;;; The integer type restriction on the length ensures that it will be
;;; 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".)
-"1.0.28.40"
+"1.0.28.41"