Fix make-array transforms.
[sbcl.git] / src / code / type-init.lisp
1 ;;;; When this file's top level forms are run, it precomputes the
2 ;;;; translations for commonly used type specifiers. This stuff is
3 ;;;; split off from the other type stuff to get around problems with
4 ;;;; everything needing to be loaded before everything else. This
5 ;;;; stuff is also somewhat implementation-dependent in that
6 ;;;; implementations may want to precompute other types which are
7 ;;;; important to them.
8
9 ;;;; This software is part of the SBCL system. See the README file for
10 ;;;; more information.
11 ;;;;
12 ;;;; This software is derived from the CMU CL system, which was
13 ;;;; written at Carnegie Mellon University and released into the
14 ;;;; public domain. The software is in the public domain and is
15 ;;;; provided with absolutely no warranty. See the COPYING and CREDITS
16 ;;;; files for more information.
17
18 (in-package "SB!KERNEL")
19
20 ;;; numeric types
21 (/show0 "precomputing numeric types")
22 (precompute-types '((mod 2) (mod 4) (mod 16) (mod #x100) (mod #x10000)
23                     (mod #x100000000)
24                     (unsigned-byte 1) (unsigned-byte 2) (unsigned-byte 4)
25                     (unsigned-byte 8) (unsigned-byte 16) (unsigned-byte 32)
26                     (signed-byte 8) (signed-byte 16) (signed-byte 32)))
27
28 ;;; built-in symbol type specifiers
29 (/show0 "precomputing built-in symbol type specifiers")
30 (precompute-types *!standard-type-names*)
31
32 #+sb-xc-host (setf *type-system-initialized* t)
33
34 (/show0 "done with type-init.lisp")