From: Juho Snellman Date: Tue, 17 Apr 2007 13:28:19 +0000 (+0000) Subject: 1.0.4.96: oops, missed one case in the HAIRY-DATA-VECTOR-REF changes X-Git-Url: http://repo.macrolet.net/gitweb/?a=commitdiff_plain;h=d1eb2bf63d127e8b022a19611ed503fd37ae77af;p=sbcl.git 1.0.4.96: oops, missed one case in the HAIRY-DATA-VECTOR-REF changes * SIMPLE-STRING is a special case in EXTRACT-UPGRADED-ELEMENT-TYPE --- diff --git a/src/compiler/array-tran.lisp b/src/compiler/array-tran.lisp index 342fdc9..a3c5ab5 100644 --- a/src/compiler/array-tran.lisp +++ b/src/compiler/array-tran.lisp @@ -783,7 +783,11 @@ ;; use that information it for type checking (even ;; if the access can't be optimized due to the array ;; not being simple). - (when (eql element-type *wild-type*) + (when (and (eql element-type *wild-type*) + ;; This type logic corresponds to the special + ;; case for strings in HAIRY-DATA-VECTOR-REF + ;; (generic/vm-tran.lisp) + (not (csubtypep type (specifier-type 'simple-string)))) (when (or (not (array-type-p type)) ;; If it's a simple array, we might be able ;; to inline the access completely. diff --git a/version.lisp-expr b/version.lisp-expr index a4e5c2d..e1433d1 100644 --- a/version.lisp-expr +++ b/version.lisp-expr @@ -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.4.95" +"1.0.4.96"