(safe-format t "~&baz ~S (~A) ~S" condition condition result)))))))
227: "compiler bewilderment with adjustable vectors and COPY-SEQ"
- In sbcl-0.7.9.54 on x86,
- (let ((v (make-array 0 :fill-pointer 0)))
- (vector-push-extend 1 v) (copy-seq v))
- fails with
- The value 336206758 is not of type VECTOR.
- More excitement follows from
- (defun argh2 (x)
- (let ((v (make-array 0 :fill-pointer 0)))
- (vector-push-extend x v)
- (format t
- "~&~<~;/after VPE ~_~<V=~:_=~S~:>~;~:>~%"
- (list
- (let* ((xx1871 v) (nn1872 (/nn xx1871)))
- (list (if nn1872 nn1872 xx1871)))))
- (copy-seq v)))
- where (ARGH2 2) loops endlessly printing "/after VPE V==#(3)".
-
+ (fixed in sbcl-0.7.9.65)
DEFUNCT CATEGORIES OF BUGS
IR1-#:
:derive-type (sequence-result-nth-arg 1))
(defknown copy-seq (sequence) consed-sequence (flushable)
- :derive-type #'result-type-first-arg)
+ :derive-type (sequence-result-nth-arg 1))
(defknown length (sequence) index (foldable flushable))
(defknown reverse (sequence) consed-sequence (flushable)
- :derive-type #'result-type-first-arg)
+ :derive-type (sequence-result-nth-arg 1))
(defknown nreverse (sequence) sequence ()
:derive-type #'result-type-first-arg)
goto losing_build_id;
for (i = 0; i < remaining_len; ++i) {
FSHOW((stderr, "ptr[%d] = char = %d, expected=%d\n",
- ptr[i], i, build_id[i]));
+ i, ptr[i], build_id[i]));
if (ptr[i] != build_id[i])
goto losing_build_id;
}
lose("more than one core file specified");
} else {
++argi;
- core = copied_string(argv[argi]);
if (argi >= argc) {
lose("missing filename for --core argument");
}
+ core = copied_string(argv[argi]);
++argi;
}
} else if (0 == strcmp(arg, "--end-runtime-options")) {
x))
(assert (null result))
(assert (typep error 'program-error)))
+
+;;; COPY-SEQ should work on known-complex vectors:
+(assert (equalp #(1)
+ (let ((v (make-array 0 :fill-pointer 0)))
+ (vector-push-extend 1 v)
+ (copy-seq v))))
;;; versions, especially for internal versions off the main CVS
;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
-"0.7.9.64"
+"0.7.9.65"