X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Farray-tran.lisp;h=dfd166408af867be840d9d6e46c985b7526b6707;hb=4af56c115ef7ec63e06be677f9dfbf8116882e4c;hp=9f90545be7b29068e9cc2f1b1e6415f00dc5ee17;hpb=a71bcb05283105c853b29f77c31d6e9ca869df7d;p=sbcl.git diff --git a/src/compiler/array-tran.lisp b/src/compiler/array-tran.lisp index 9f90545..dfd1664 100644 --- a/src/compiler/array-tran.lisp +++ b/src/compiler/array-tran.lisp @@ -475,7 +475,9 @@ (array index)) (unless (constant-lvar-p axis) (give-up-ir1-transform "The axis is not constant.")) - (let ((array-type (lvar-type array)) + ;; Dimensions may change thanks to ADJUST-ARRAY, so we need the + ;; conservative type. + (let ((array-type (lvar-conservative-type array)) (axis (lvar-value axis))) (let ((dims (array-type-dimensions-or-give-up array-type))) (unless (listp dims)