0.8.1.38:
authorChristophe Rhodes <csr21@cam.ac.uk>
Thu, 17 Jul 2003 15:00:52 +0000 (15:00 +0000)
committerChristophe Rhodes <csr21@cam.ac.uk>
Thu, 17 Jul 2003 15:00:52 +0000 (15:00 +0000)
Make it slightly easier on the type inferencer: don't even
threaten to return NIL from a string array reference.
... use ETYPECASE instead of TYPECASE.

src/compiler/generic/vm-tran.lisp
version.lisp-expr

index 37fdb87..68935a6 100644 (file)
@@ -46,7 +46,7 @@
     (if (array-type-p ctype)
        ;; the other transform will kick in, so that's OK
        (give-up-ir1-transform)
-       `(typecase string
+       `(etypecase string
          ((simple-array character (*)) (data-vector-ref string index))
          ((simple-array nil (*)) (data-vector-ref string index))))))
 
@@ -95,7 +95,7 @@
     (if (array-type-p ctype)
        ;; the other transform will kick in, so that's OK
        (give-up-ir1-transform)
-       `(typecase string
+       `(etypecase string
          ((simple-array character (*))
           (data-vector-set string index new-value))
          ((simple-array nil (*))
index d1a92f9..fa433f2 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".)
-"0.8.1.37"
+"0.8.1.38"