1.0.22.20: Make a stab at having DEFTYPE types replace structure types.
[sbcl.git] / tests / array.pure.lisp
index a44193b..7760a6c 100644 (file)
                                  collect (logand 1 (funcall lf (aref v1 i) (aref v2 i))))
                            'bit-vector)
           do (assert (bit-vector-equal r1 r2)))))
+
+(with-test (:name (adjust-array fill-pointer))
+  ;; CLHS, ADJUST-ARRAY: An error of type error is signaled if
+  ;; fill-pointer is supplied and non-nil but array has no fill pointer.
+  (assert (eq :good
+              (handler-case
+                  (let ((array (make-array 12)))
+                    (assert (not (array-has-fill-pointer-p array)))
+                    (adjust-array array 12 :fill-pointer t)
+                    array)
+                (type-error ()
+                  :good)))))
+
+(with-test (:name (adjust-array multidimensional))
+  (let ((ary (make-array '(2 2))))
+    ;; SBCL used to give multidimensional arrays a bogus fill-pointer
+    (assert (not (array-has-fill-pointer-p (adjust-array ary '(2 2)))))))