adjust call to REPLACE inside ADJUST-ARRAY
authorNathan Froyd <froydnj@gmail.com>
Thu, 20 Dec 2012 04:16:01 +0000 (23:16 -0500)
committerNathan Froyd <froydnj@gmail.com>
Thu, 20 Dec 2012 04:51:20 +0000 (23:51 -0500)
The more information we can provide, the better.

src/code/array.lisp

index 90b7a99..c700d7b 100644 (file)
@@ -960,7 +960,10 @@ of specialized arrays is supported."
                                dimensions new-length element-type
                                initial-contents initial-contents-p
                                initial-element initial-element-p))
+                        ;; Provide :END1 to avoid full call to LENGTH
+                        ;; inside REPLACE.
                         (replace new-data old-data
+                                 :end1 new-length
                                  :start2 old-start :end2 old-end))
                        (t (setf new-data
                                 (shrink-vector old-data new-length))))