X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=BUGS;h=6f793ac0f9aeca2ec3211d9ad3b151b6617cd8d8;hb=0573ba54479d1d65e2c8a14daffd2976e249bf40;hp=e3bb4d525f6db876394ac31ee20f3d032f546f94;hpb=b282ecc0240c6dc67aaeea2d64046d411738385a;p=sbcl.git diff --git a/BUGS b/BUGS index e3bb4d5..6f793ac 100644 --- a/BUGS +++ b/BUGS @@ -1279,3 +1279,19 @@ WORKAROUND: (1+ (fee))) uses generic arithmetic with INLINE and fixnum without. + +306: "Imprecise unions of array types" + a.(defun foo (x) + (declare (optimize speed) + (type (or (array cons) (array vector)) x)) + (elt (aref x 0) 0)) + (foo #((0))) => TYPE-ERROR + + relatedly, + + b.(subtypep + 'array + `(or + ,@(loop for x across sb-vm:*specialized-array-element-type-properties* + collect `(array ,(sb-vm:saetp-specifier x))))) + => NIL, T (when it should be T, T)