1.0.24.44: bug in INVALID-ARRAY-INDEX-ERROR, leaving EXPECTED-TYPE slot unbound
authorNikodemus Siivola <nikodemus@random-state.net>
Fri, 16 Jan 2009 12:13:40 +0000 (12:13 +0000)
committerNikodemus Siivola <nikodemus@random-state.net>
Fri, 16 Jan 2009 12:13:40 +0000 (12:13 +0000)
 * It's :EXPECTED-TYPE, not :TYPE. ...having compiler check calls to ERROR like
   this would be nice.

 * Marginally better test to catch this.

src/code/array.lisp
tests/array.pure.lisp
version.lisp-expr

index 7e9a28d..1df47c5 100644 (file)
@@ -482,7 +482,7 @@ of specialized arrays is supported."
          :array array
          :axis axis
          :datum index
-         :type `(integer 0 (,bound))))
+         :expected-type `(integer 0 (,bound))))
 
 ;;; SUBSCRIPTS has a dynamic-extent list structure and is destroyed
 (defun %array-row-major-index (array subscripts
index 2088758..7f5c11f 100644 (file)
              (eval `(aref ,array 0 1 3))
            (sb-int:invalid-array-index-error (e)
              (when (and (eq array (sb-kernel::invalid-array-index-error-array e))
-                        (= 3 (type-error-datum e)))
+                        (= 3 (type-error-datum e))
+                        (equal '(integer 0 (3)) (type-error-expected-type e)))
                :right)))))))
index 2ee2588..ca2be36 100644 (file)
@@ -17,4 +17,4 @@
 ;;; checkins which aren't released. (And occasionally for internal
 ;;; versions, especially for internal versions off the main CVS
 ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
-"1.0.24.43"
+"1.0.24.44"