From ff91e060ff20e72fd8b908bb502288029865d361 Mon Sep 17 00:00:00 2001 From: rtoy <rtoy> Date: Fri, 22 Apr 2005 14:00:08 +0000 Subject: [PATCH] The return type of COPY-SEQ is a CONSED-SEQUENCE which includes simple-arrays, but the derive-type optimizer (RESULT-TYPE-FIRST-ARG) just returns the type of the first arg. This is wrong if the first arg is a complex array. Use SEQUENCE-RESULT-NTH-ARG instead. Fixes cmucl-type-prop.30 test. --- compiler/fndb.lisp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/compiler/fndb.lisp b/compiler/fndb.lisp index 9f827257b..bfbb6423a 100644 --- a/compiler/fndb.lisp +++ b/compiler/fndb.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/fndb.lisp,v 1.129 2004/12/23 16:22:05 rtoy Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/fndb.lisp,v 1.130 2005/04/22 14:00:08 rtoy Exp $") ;;; ;;; ********************************************************************** ;;; @@ -393,7 +393,7 @@ :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)) -- GitLab