0.8.1.9:
authorChristophe Rhodes <csr21@cam.ac.uk>
Fri, 27 Jun 2003 10:07:44 +0000 (10:07 +0000)
committerChristophe Rhodes <csr21@cam.ac.uk>
Fri, 27 Jun 2003 10:07:44 +0000 (10:07 +0000)
commit4bc9a2b01540f3a7cbf4499b4689b292fe406139
treef3e75fdfb1137720a15c98f9e9dbd2bbdd7075e7
parent92209029befc55315cca38710d55c9f4608baff3
0.8.1.9:
Implement slightly DWIMish behaviour for (TYPE (ARRAY FOO ..) ..)
declarations, as discussed on the CLHS "Declaration TYPE" page, and
on sbcl-help circa 2003-05-08 and with Fufie on #lisp around
2003-06-24
... We need the target's UPGRADED-ARRAY-ELEMENT-TYPE, so move
the definition and define it in SB!XC
... use it (carefully) in MAKE-ARRAY optimizers and transforms,
because the declaration behaviour we're implementing
doesn't extend to (MAKE-ARRAY .. :ELEMENT-TYPE 'FOO)
... insert appropriate THEs in HAIRY-DATA-VECTOR-{REF,SET} if the
declared array element type isn't the same as the
declared upgraded element type
13 files changed:
NEWS
src/code/array.lisp
src/code/late-type.lisp
src/cold/defun-load-or-cload-xcompiler.lisp
src/compiler/array-tran.lisp
src/compiler/debug-dump.lisp
src/compiler/fndb.lisp
src/compiler/generic/vm-tran.lisp
src/compiler/generic/vm-type.lisp
tests/array.pure.lisp
tests/compiler-1.impure-cload.lisp
tests/compiler.pure.lisp
version.lisp-expr