eda9d8d9794e1cb0891cedb3136f85054d4601ae
[sbcl.git] / package-data-list.lisp-expr
1 ;;;; the specifications of SBCL-specific packages, except..
2 ;;;;   * the creation of the trivial SB-SLOT-ACCESSOR-NAME package
3 ;;;;   * any SHADOWing hackery
4 ;;;; The standard, non-SBCL-specific packages COMMON-LISP,
5 ;;;; COMMON-LISP-USER, and KEYWORD are also handled through other
6 ;;;; mechanisms.
7
8 ;;;; This software is part of the SBCL system. See the README file for
9 ;;;; more information.
10 ;;;;
11 ;;;; This software is derived from the CMU CL system, which was
12 ;;;; written at Carnegie Mellon University and released into the
13 ;;;; public domain. The software is in the public domain and is
14 ;;;; provided with absolutely no warranty. See the COPYING and CREDITS
15 ;;;; files for more information.
16
17 (#s(sb-cold:package-data
18     :name "SB!ALIEN"
19     :doc "public: the ALIEN foreign function interface"
20     :use ("CL" "SB!EXT" "SB!INT" "SB!SYS" "SB!ALIEN-INTERNALS")
21     :reexport ("ARRAY" "BOOLEAN" "DOUBLE-FLOAT" "LONG-FLOAT" "FUNCTION"
22                "INTEGER" "SINGLE-FLOAT" "UNION"  "SYSTEM-AREA-POINTER"
23                "VALUES" "*")
24     :export ("ADDR" "ALIEN" "ALIEN-FUNCALL" "ALIEN-SAP"
25              "ALIEN-SIZE" "ALIEN-BOOLEAN" "CAST" "DEF-ALIEN-ROUTINE"
26              "DEF-ALIEN-TYPE" "DEF-ALIEN-VARIABLE" "DEF-BUILTIN-ALIEN-TYPE"
27              "DEREF" "ENUM" "EXTERN-ALIEN"
28              "SAP-ALIEN" "SIGNED" "SLOT" "STRUCT"
29              "UNSIGNED" "WITH-ALIEN" "FREE-ALIEN" "NULL-ALIEN"
30              "MAKE-ALIEN"
31              "LOAD-FOREIGN" "LOAD-1-FOREIGN"))
32
33  #s(sb-cold:package-data
34     :name "SB!ALIEN-INTERNALS"
35     :doc "private: stuff for implementing ALIENs and friends"
36     :use ("CL")
37     :export ("%CAST" "%DEREF-ADDR" "%HEAP-ALIEN" "%HEAP-ALIEN-ADDR"
38              "%LOCAL-ALIEN-ADDR" "%LOCAL-ALIEN-FORCED-TO-MEMORY-P" "%SAP-ALIEN"
39              "%SET-DEREF" "%SET-HEAP-ALIEN" "%SET-LOCAL-ALIEN" "%SET-SLOT"
40              "%SLOT-ADDR" "*VALUES-TYPE-OKAY*" "ALIEN-ARRAY-TYPE"
41              "ALIEN-ARRAY-TYPE-DIMENSIONS" "ALIEN-ARRAY-TYPE-ELEMENT-TYPE"
42              "ALIEN-ARRAY-TYPE-P" "ALIEN-BOOLEAN-TYPE" "ALIEN-BOOLEAN-TYPE-P"
43              "ALIEN-DOUBLE-FLOAT-TYPE" "ALIEN-DOUBLE-FLOAT-TYPE-P"
44              "ALIEN-ENUM-TYPE" "ALIEN-ENUM-TYPE-P" "ALIEN-FLOAT-TYPE"
45              "ALIEN-FLOAT-TYPE-P" "ALIEN-FUNCTION-TYPE"
46              "ALIEN-FUNCTION-TYPE-ARG-TYPES" "ALIEN-FUNCTION-TYPE-P"
47              "ALIEN-FUNCTION-TYPE-RESULT-TYPE" "ALIEN-INTEGER-TYPE"
48              "ALIEN-INTEGER-TYPE-P" "ALIEN-INTEGER-TYPE-SIGNED"
49              "ALIEN-LONG-FLOAT-TYPE" "ALIEN-LONG-FLOAT-TYPE-P"
50              "ALIEN-POINTER-TYPE" "ALIEN-POINTER-TYPE-P"
51              "ALIEN-POINTER-TYPE-TO" "ALIEN-RECORD-FIELD"
52              "ALIEN-RECORD-FIELD-NAME" "ALIEN-RECORD-FIELD-OFFSET"
53              "ALIEN-RECORD-FIELD-P" "ALIEN-RECORD-FIELD-TYPE"
54              "ALIEN-RECORD-TYPE" "ALIEN-RECORD-TYPE-FIELDS"
55              "ALIEN-RECORD-TYPE-P" "ALIEN-SINGLE-FLOAT-TYPE"
56              "ALIEN-SINGLE-FLOAT-TYPE-P" "ALIEN-SUBTYPE-P" "ALIEN-TYPE"
57              "ALIEN-TYPE-=" "ALIEN-TYPE-ALIGNMENT" "ALIEN-TYPE-BITS"
58              "ALIEN-TYPE-P" "ALIEN-TYPEP"
59              "ALIEN-VALUE" "ALIEN-VALUE-TYPE"
60              "ALIEN-VALUE-SAP" "ALIEN-VALUE-P"
61              "ALIEN-VALUES-TYPE" "ALIEN-VALUES-TYPE-P"
62              "ALIEN-VALUES-TYPE-VALUES" "ALIGN-OFFSET" "COMPUTE-ALIEN-REP-TYPE"
63              "COMPUTE-DEPORT-LAMBDA" "COMPUTE-DEPOSIT-LAMBDA"
64              "COMPUTE-EXTRACT-LAMBDA" "COMPUTE-LISP-REP-TYPE"
65              "COMPUTE-NATURALIZE-LAMBDA" "DEF-ALIEN-TYPE-CLASS"
66              "DEF-ALIEN-TYPE-METHOD" "DEF-ALIEN-TYPE-TRANSLATOR" "DEPORT"
67              "DEPOSIT-ALIEN-VALUE" "DISPOSE-LOCAL-ALIEN" "EXTRACT-ALIEN-VALUE"
68              "HEAP-ALIEN-INFO" "HEAP-ALIEN-INFO-P" "HEAP-ALIEN-INFO-SAP-FORM"
69              "HEAP-ALIEN-INFO-TYPE" "INVOKE-ALIEN-TYPE-METHOD" "LOCAL-ALIEN"
70              "LOCAL-ALIEN-INFO" "LOCAL-ALIEN-INFO-FORCE-TO-MEMORY-P"
71              "LOCAL-ALIEN-INFO-P" "LOCAL-ALIEN-INFO-TYPE"
72              "MAKE-ALIEN-FUNCTION-TYPE" "MAKE-ALIEN-POINTER-TYPE"
73              "MAKE-ALIEN-VALUE"
74              "MAKE-LOCAL-ALIEN" "NATURALIZE" "NOTE-LOCAL-ALIEN-TYPE"
75              "PARSE-ALIEN-TYPE" "UNPARSE-ALIEN-TYPE"))
76
77  #s(sb-cold:package-data
78     :name "SB!ASSEM"
79     :doc "private: the assembler, used by the compiler"
80     :use ("CL" "SB!INT" "SB!EXT")
81     :export ("ASSEMBLY-UNIT"
82
83              "*ASSEM-SCHEDULER-P*"
84              "*ASSEM-INSTRUCTIONS*"
85              "*ASSEM-MAX-LOCATIONS*"
86
87              "EMIT-BYTE" "EMIT-SKIP" "EMIT-BACK-PATCH"
88              "EMIT-CHOOSER" "DEFINE-BITFIELD-EMITTER"
89              "DEFINE-INSTRUCTION" "DEFINE-INSTRUCTION-MACRO"
90              "DEF-ASSEMBLER-PARAMS" "EMIT-POSTIT"
91
92              "MAKE-SEGMENT" "SEGMENT-NAME" "ASSEMBLE"
93              "ALIGN" "INST" "LABEL" "LABEL-P" "GEN-LABEL"
94              "EMIT-LABEL" "LABEL-POSITION" "APPEND-SEGMENT" "FINALIZE-SEGMENT"
95              "ON-SEGMENT-CONTENTS-VECTORLY" "WRITE-SEGMENT-CONTENTS"
96              "READS" "WRITES" "SEGMENT"
97              "WITHOUT-SCHEDULING"
98              "VARIABLE-LENGTH"
99              "SEGMENT-COLLECT-DYNAMIC-STATISTICS"
100
101              ;; FIXME: These are in the SB-ASSEM package now, but
102              ;; (left over from CMU CL) are defined in files which
103              ;; are IN-PACKAGE SB-C. It would probably be cleaner
104              ;; to move at least most of them to files which are
105              ;; IN-PACKAGE SB-ASSEM.
106              "BRANCH" "DO-SSET-ELEMENTS" "FLUSHABLE" "MAKE-SSET" "SSET"
107              "SSET-ADJOIN" "SSET-DELETE" "SSET-ELEMENT" "SSET-EMPTY"))
108
109  #s(sb-cold:package-data
110     :name "SB!BIGNUM"
111     :doc "private: bignum implementation"
112     :use ("CL" "SB!KERNEL" "SB!INT" "SB!EXT")
113     :export ("%ADD-WITH-CARRY" "%ALLOCATE-BIGNUM" "%ASHL" "%ASHR"
114              "%BIGNUM-LENGTH" "%BIGNUM-REF" "%BIGNUM-SET"
115              "%BIGNUM-SET-LENGTH" "%DIGIT-0-OR-PLUSP"
116              "%DIGIT-LOGICAL-SHIFT-RIGHT"
117              "%FIXNUM-DIGIT-WITH-CORRECT-SIGN" "%FIXNUM-TO-DIGIT"
118              "%FLOOR" "%LOGAND" "%LOGIOR" "%LOGNOT" "%LOGXOR"
119              "%MULTIPLY" "%MULTIPLY-AND-ADD"
120              "%SUBTRACT-WITH-BORROW" "ADD-BIGNUMS"
121              "BIGNUM-ASHIFT-LEFT" "BIGNUM-ASHIFT-RIGHT"
122              "BIGNUM-COMPARE" "BIGNUM-DEPOSIT-BYTE"
123              "BIGNUM-ELEMENT-TYPE" "BIGNUM-GCD" "BIGNUM-INDEX"
124              "BIGNUM-INTEGER-LENGTH" "BIGNUM-LOAD-BYTE"
125              "BIGNUM-LOGCOUNT" "BIGNUM-LOGICAL-AND"
126              "BIGNUM-LOGICAL-IOR" "BIGNUM-LOGICAL-NOT"
127              "BIGNUM-LOGICAL-XOR" "BIGNUM-PLUS-P"
128              "BIGNUM-TO-FLOAT" "BIGNUM-TRUNCATE" "BIGNUM-TYPE"
129              "FLOAT-BIGNUM-RATIO" "MAKE-SMALL-BIGNUM"
130              "MULTIPLY-BIGNUM-AND-FIXNUM" "MULTIPLY-BIGNUMS"
131              "MULTIPLY-FIXNUMS" "NEGATE-BIGNUM"
132              "SUBTRACT-BIGNUM" "SXHASH-BIGNUM"))
133
134  #s(sb-cold:package-data
135     :name "SB!C"
136     :doc "private: implementation of the compiler"
137     :use ("CL" "SB!ALIEN-INTERNALS" "SB!ALIEN" "SB!BIGNUM"
138           #!+sb-dyncount "SB-DYNCOUNT"
139           "SB!EXT" "SB!INT" "SB!KERNEL" "SB!ASSEM" "SB!SYS")
140     :reexport ("SLOT" "CODE-INSTRUCTIONS" "FLUSHABLE")
141     :export ("%ALIEN-FUNCALL" "%CATCH-BREAKUP" "%CONTINUE-UNWIND" "&MORE"
142               "%LISTIFY-REST-ARGS" "%MORE-ARG" "%MORE-ARG-VALUES"
143               "%UNWIND-PROTECT-BREAKUP"
144
145               "*BACKEND-BYTE-ORDER*" "*BACKEND-DISASSEM-PARAMS*"
146               "*BACKEND-FASL-FILE-IMPLEMENTATION*"
147               "*BACKEND-FASL-FILE-TYPE*" "*BACKEND-FASL-FILE-VERSION*"
148               "*BACKEND-INFO-ENVIRONMENT*"
149               "*BACKEND-INSTRUCTION-FLAVORS*" "*BACKEND-INSTRUCTION-FORMATS*"
150               "*BACKEND-INTERNAL-ERRORS*" "*BACKEND-PAGE-SIZE*"
151               "*BACKEND-REGISTER-SAVE-PENALTY*"
152               "*BACKEND-SB-LIST*" "*BACKEND-SB-NAMES*"
153               "*BACKEND-SC-NAMES*" "*BACKEND-SC-NUMBERS*"
154               "*BACKEND-SPECIAL-ARG-TYPES*"
155               "*BACKEND-T-PRIMITIVE-TYPE*"
156
157               "*CODE-SEGMENT*" 
158               "*COMPILE-TIME-DEFINE-MACROS*"
159               "*COMPILING-FOR-INTERPRETER*" "*CONVERTING-FOR-INTERPRETER*"
160               "*COUNT-VOP-USAGES*" "*ELSEWHERE*"
161               "*FASL-HEADER-STRING-START-STRING*"
162               "*FASL-HEADER-STRING-STOP-CHAR-CODE*"
163               "*SETF-ASSUMED-FBOUNDP*"
164               "*SUPPRESS-VALUES-DECLARATION*"
165
166               "ALLOC-ALIEN-STACK-SPACE" "ALLOC-NUMBER-STACK-SPACE"
167               "ALLOCATE-CODE-OBJECT" "ALLOCATE-FRAME"
168               "ALLOCATE-DYNAMIC-CODE-OBJECT" "ALLOCATE-FULL-CALL-FRAME"
169               "ANY" "ARGUMENT-COUNT-ERROR" "ASSEMBLE-FILE"
170               "ATTRIBUTES" "ATTRIBUTES-INTERSECTION" "ATTRIBUTES-UNION"
171               "ATTRIBUTES=" "BIND"
172               "BYTE-BLT" ; doesn't logically belong here, but is name of VOP..
173               "CALL" "CALL-LOCAL" "CALL-NAMED" "CALL-OUT" "CALL-VARIABLE"
174               "CALLEE-NFP-TN" "CALLEE-RETURN-PC-TN"
175               "CASE-BODY" "CATCH-BLOCK" "CHECK-CONS"
176               "CHECK-FIXNUM" "CHECK-FUNCTION" "CHECK-FUNCTION-OR-SYMBOL"
177               "CHECK-SIGNED-BYTE-32" "CHECK-SYMBOL" "CHECK-UNSIGNED-BYTE-32"
178               "CLOSURE-INIT" "CLOSURE-REF"
179               "CODE-CONSTANT-REF" "CODE-CONSTANT-SET" 
180               "COMPILE-FOR-EVAL" "COMPONENT" "COMPONENT-HEADER-LENGTH"
181               "COMPONENT-INFO" "COMPONENT-LIVE-TN" "COMPUTE-FUNCTION"
182               "COMPUTE-OLD-NFP" "COPY-MORE-ARG" 
183               "CURRENT-BINDING-POINTER" "CURRENT-NFP-TN"
184               "CURRENT-STACK-POINTER" "DEALLOC-ALIEN-STACK-SPACE"
185               "DEALLOC-NUMBER-STACK-SPACE" "DEF-BOOLEAN-ATTRIBUTE"
186               "DEF-IR1-TRANSLATOR" "DEF-PRIMITIVE-TRANSLATOR"
187               "DEF-PRIMITIVE-TYPE" "DEF-PRIMITIVE-TYPE-ALIAS"
188               "DEF-SOURCE-TRANSFORM" "DEF-VM-SUPPORT-ROUTINE"
189               "DEFINE-ASSEMBLY-ROUTINE" "DEFINE-MOVE-FUNCTION"
190               "DEFINE-MOVE-VOP" "DEFINE-STORAGE-BASE"
191               "DEFINE-STORAGE-CLASS" "DEFINE-VOP"
192               "DEFKNOWN" "DEFOPTIMIZER"
193               "DEFTRANSFORM" "DERIVE-TYPE"
194               "ENTRY-NODE-INFO-NLX-TAG" "ENTRY-NODE-INFO-ST-TOP"
195               "ENVIRONMENT-DEBUG-LIVE-TN" "ENVIRONMENT-LIVE-TN"
196               "FAST-SYMBOL-FUNCTION" "FAST-SYMBOL-VALUE" "FOLDABLE"
197               "FORCE-TN-TO-STACK" "GET-VECTOR-SUBTYPE"
198               "HALT" "IF-EQ" "INSTANCE-REF" "INSTANCE-SET"
199               "IR2-COMPONENT-CONSTANTS" "IR2-CONVERT"
200               "IR2-ENVIRONMENT-NUMBER-STACK-P" "KNOWN-CALL-LOCAL"
201               "KNOWN-RETURN" "LAMBDA-EVAL-INFO-ARGS-PASSED"
202               "LAMBDA-EVAL-INFO-ENTRIES" "LAMBDA-EVAL-INFO-FRAME-SIZE"
203               "LAMBDA-EVAL-INFO-FUNCTION" "LOCATION=" "LTN-ANNOTATE"
204               "MAKE-ALIAS-TN" "MAKE-CATCH-BLOCK"
205               "MAKE-CLOSURE" "MAKE-CONSTANT-TN" "MAKE-FIXNUM"
206               "MAKE-LOAD-TIME-CONSTANT-TN" "MAKE-N-TNS" "MAKE-NORMAL-TN"
207               "MAKE-OTHER-IMMEDIATE-TYPE" "MAKE-RANDOM-TN"
208               "MAKE-REPRESENTATION-TN" "MAKE-RESTRICTED-TN" "MAKE-SC-OFFSET"
209               "MAKE-STACK-POINTER-TN" "MAKE-TN-REF" "MAKE-UNWIND-BLOCK"
210               "MAKE-VALUE-CELL" "MAKE-WIRED-TN" "META-PRIMITIVE-TYPE-OR-LOSE"
211               "META-SB-OR-LOSE" "META-SC-NUMBER-OR-LOSE" "META-SC-OR-LOSE"
212               "MORE-ARG-CONTEXT" "MOVABLE" "MOVE" "MULTIPLE-CALL"
213               "MULTIPLE-CALL-LOCAL" "MULTIPLE-CALL-NAMED"
214               "MULTIPLE-CALL-VARIABLE" "NLX-ENTRY" "NLX-ENTRY-MULTIPLE"
215               "NON-DESCRIPTOR-STACK" "NOTE-ENVIRONMENT-START"
216               "NOTE-THIS-LOCATION" "OPTIMIZER" "PACK-TRACE-TABLE"
217               "POLICY" "PREDICATE" "PRIMITIVE-TYPE" "PRIMITIVE-TYPE-OF"
218               "PRIMITIVE-TYPE-OR-LOSE" "PRIMITIVE-TYPE-VOP"
219               "PRIMITIVE-TYPE-NAME" "PUSH-VALUES"
220               "READ-PACKED-BIT-VECTOR" "READ-VAR-INTEGER" "READ-VAR-STRING"
221               "RESET-STACK-POINTER" "RESTORE-DYNAMIC-STATE"
222               "RETURN-MULTIPLE" "SAVE-DYNAMIC-STATE" "SB"
223               "SB-ALLOCATED-SIZE" "SB-NAME" "SB-OR-LOSE" "SB-P" "SC" "SC-CASE"
224               "SC-IS" "SC-NAME" "SC-NUMBER" "SC-NUMBER-OR-LOSE"
225               "SC-OFFSET-OFFSET" "SC-OFFSET-SCN" "SC-OR-LOSE" "SC-P" "SC-SB"
226               "SET-UNWIND-PROTECT" "SET-VECTOR-SUBTYPE"
227               "SETUP-CLOSURE-ENVIRONMENT" "SETUP-ENVIRONMENT"
228               "SPECIFY-SAVE-TN" "INSTANCE-REF"
229               "INSTANCE-SET" "TAIL-CALL" "TAIL-CALL-NAMED"
230               "TAIL-CALL-VARIABLE" "TEMPLATE-OR-LOSE"
231               "TN" "TN-OFFSET" "TN-P" "TN-REF" "TN-REF-ACROSS" "TN-REF-LOAD-TN"
232               "TN-REF-NEXT" "TN-REF-NEXT-REF" "TN-REF-P" "TN-REF-TARGET"
233               "TN-REF-TN" "TN-REF-VOP" "TN-REF-WRITE-P" "TN-SC" "TN-VALUE"
234               "TRACE-TABLE-ENTRY" "TYPE-CHECK-ERROR" "UNBIND" "UNBIND-TO-HERE"
235               "UNSAFE" "UNWIND" "UWP-ENTRY"
236               "VALUE-CELL-REF" "VALUE-CELL-SET"
237               "VERIFY-ARGUMENT-COUNT" "WRITE-PACKED-BIT-VECTOR"
238               "WRITE-VAR-INTEGER" "WRITE-VAR-STRING" "XEP-ALLOCATE-FRAME"
239               "LABEL-ID" "FIXUP" "FIXUP-FLAVOR" "FIXUP-NAME" "FIXUP-OFFSET"
240               "FIXUP-P" "MAKE-FIXUP"
241               "DEF-ALLOC"
242               "VAR-ALLOC"
243               "SAFE-FDEFN-FUNCTION"
244               "NOTE-FIXUP"
245               "DEF-REFFER"
246               "EMIT-NOP"
247               "DEF-SETTER"
248               "FIXED-ALLOC"
249               "MAKE-UNBOUND-MARKER"
250               "RETURN-SINGLE"
251               "NOTE-NEXT-INSTRUCTION"
252               "SET-SLOT"
253               "LOCATION-NUMBER"
254               "BYTE-FASL-FILE-VERSION"
255               "*COMPONENT-BEING-COMPILED*"
256               "BLOCK-NUMBER"
257               "BACKEND"
258               "BACKEND-BYTE-FASL-FILE-IMPLEMENTATION"
259               "BACKEND-BYTE-FASL-FILE-TYPE"
260               "IR2-BLOCK-BLOCK"
261               "DISASSEM-BYTE-COMPONENT"
262               "FUNCALLABLE-INSTANCE-LEXENV"
263               "DISASSEM-BYTE-FUN"
264               "VOP-BLOCK"
265               "*ASSEMBLY-OPTIMIZE*"
266               "LARGE-ALLOC"
267               "%SET-FUNCTION-SELF"
268               "VM-SUPPORT-ROUTINES-IMMEDIATE-CONSTANT-SC"
269               "VM-SUPPORT-ROUTINES-LOCATION-PRINT-NAME"
270               "VM-SUPPORT-ROUTINES-PRIMITIVE-TYPE-OF"
271               "VM-SUPPORT-ROUTINES-PRIMITIVE-TYPE"
272               "VM-SUPPORT-ROUTINES-MAKE-CALL-OUT-TNS"
273               "VM-SUPPORT-ROUTINES-STANDARD-ARGUMENT-LOCATION"
274               "VM-SUPPORT-ROUTINES-MAKE-RETURN-PC-PASSING-LOCATION"
275               "VM-SUPPORT-ROUTINES-MAKE-OLD-FP-PASSING-LOCATION"
276               "VM-SUPPORT-ROUTINES-MAKE-OLD-FP-SAVE-LOCATION"
277               "VM-SUPPORT-ROUTINES-MAKE-RETURN-PC-SAVE-LOCATION"
278               "VM-SUPPORT-ROUTINES-MAKE-ARGUMENT-COUNT-LOCATION"
279               "VM-SUPPORT-ROUTINES-MAKE-NFP-TN"
280               "VM-SUPPORT-ROUTINES-MAKE-STACK-POINTER-TN"
281               "VM-SUPPORT-ROUTINES-MAKE-NUMBER-STACK-POINTER-TN"
282               "VM-SUPPORT-ROUTINES-MAKE-UNKNOWN-VALUES-LOCATIONS"
283               "VM-SUPPORT-ROUTINES-SELECT-COMPONENT-FORMAT"
284               "VM-SUPPORT-ROUTINES-MAKE-NLX-SP-TN"
285               "VM-SUPPORT-ROUTINES-MAKE-DYNAMIC-STATE-TNS"
286               "VM-SUPPORT-ROUTINES-MAKE-NLX-ENTRY-ARGUMENT-START-LOCATION"
287               "VM-SUPPORT-ROUTINES-GENERATE-CALL-SEQUENCE"
288               "VM-SUPPORT-ROUTINES-GENERATE-RETURN-SEQUENCE"
289               "VM-SUPPORT-ROUTINES-EMIT-NOP"
290               "VM-SUPPORT-ROUTINES-LOCATION-NUMBER"))
291
292  #s(sb-cold:package-data
293     :name "SB!C-CALL"
294     ;; FIXME: Why not just put this stuff into SB-ALIEN? Or maybe
295     ;; just glom this and SB-ALIEN together into SB-FFI?
296     :doc "public: some types used with ALIENs"
297     :use ("CL" "SB!SYS" "SB!ALIEN-INTERNALS" "SB!ALIEN")
298     :reexport ("FLOAT" "CHAR")
299     :export ("C-STRING" "DOUBLE" "INT" "LONG"
300              "SHORT" "UNSIGNED-CHAR" "UNSIGNED-INT"
301              "UNSIGNED-LONG" "UNSIGNED-SHORT" "VOID"))
302
303  #!+sb-dyncount
304  #s(sb-cold:package-data
305     :name "SB!DYNCOUNT"
306     :doc "private: some somewhat-stale code for collecting runtime statistics"
307     :use ("CL" "SB!ALIEN-INTERNALS" "SB!ALIEN" "SB!BIGNUM"
308           "SB!EXT" "SB!INT" "SB!KERNEL" "SB!ASSEM" "SB!SYS")
309     :export ("*COLLECT-DYNAMIC-STATISTICS*" "COUNT-ME"
310              "DYNCOUNT-INFO-COUNTS" "DYNCOUNT-INFO-COSTS"
311              "IR2-COMPONENT-DYNCOUNT-INFO"
312              "DYNCOUNT-INFO" "DYNCOUNT-INFO-P"))
313
314  ;; This package is a grab bag for things which used to be internal
315  ;; symbols in package COMMON-LISP. Lots of these symbols are accessed
316  ;; with explicit SB!IMPL:: prefixes in the code. It would be nice to
317  ;; reduce the use of this practice, so if symbols from here which are
318  ;; accessed that way are found to belong more appropriately in
319  ;; an existing package (e.g. KERNEL or SYS or EXT) or a new package
320  ;; (e.g. something to collect together all the FOP stuff), I
321  ;; (WHN 19990223) encourage maintainers to move them there..
322  ;;
323  ;; ..except that it's getting so big and crowded that maybe it
324  ;; should be split up, too.
325  #s(sb-cold:package-data
326     :name "SB!IMPL"
327     :doc "private: a grab bag of implementation details"
328     :use ("CL" "SB!EXT" "SB!INT" "SB!SYS" "SB!DEBUG" "SB!KERNEL" "SB!BIGNUM"))
329
330  ;; FIXME: It seems to me that this could go away, with its contents moved
331  ;; into SB!KERNEL, like the implementation of the rest of the class system.
332  #s(sb-cold:package-data
333     :name "SB!CONDITIONS"
334     :doc "private: the implementation of the condition system"
335     :use ("CL" "SB!EXT" "SB!INT" "SB!KERNEL"))
336
337  #s(sb-cold:package-data
338     :name "SB!DEBUG"
339     :doc
340 "public: (eventually) the debugger interface (but currently) the
341 debugger interface mixed with various low-level implementation stuff
342 like *STACK-TOP-HINT*"
343     :use ("CL" "SB!EXT" "SB!INT" "SB!SYS")
344     :export ("*AUTO-EVAL-IN-FRAME*" "*DEBUG-CONDITION*"
345              "*DEBUG-PRINT-LENGTH*" "*DEBUG-PRINT-LEVEL*" "*DEBUG-READTABLE*"
346              "*DEBUG-PROMPT*" "*DEBUG-HELP-STRING*" "*FLUSH-DEBUG-ERRORS*"
347              "*IN-THE-DEBUGGER*"
348              "*TRACE-INDENTATION-STEP*" "*MAX-TRACE-INDENTATION*"
349              "*TRACE-FRAME*" "*TRACE-PRINT-LENGTH*"
350              "*TRACE-PRINT-LEVEL*" "*TRACED-FUNCTION-LIST*"
351              "ARG" "BACKTRACE" "INTERNAL-DEBUG" "VAR"
352              "*PRINT-LOCATION-KIND*"
353              "*ONLY-BLOCK-START-LOCATIONS*" "*STACK-TOP-HINT*"
354              "*TRACE-VALUES*" "DO-DEBUG-COMMAND"
355              "*TRACE-ENCAPSULATE-DEFAULT*"))
356
357  #s(sb-cold:package-data
358     :name "SB!DI"
359     :doc "private: primitives used to write debuggers"
360     :use ("CL" "SB!EXT" "SB!INT" "SB!KERNEL" "SB!SYS" "SB!VM")
361     :import-from (("SB!C"
362                    "DEBUG-SOURCE-FROM" "DEBUG-SOURCE-NAME"
363                    "DEBUG-SOURCE-CREATED" "DEBUG-SOURCE-COMPILED"
364                    "DEBUG-SOURCE-START-POSITIONS" "MAKE-DEBUG-SOURCE"
365                    "DEBUG-SOURCE" "DEBUG-SOURCE-P"))
366     :reexport ("DEBUG-SOURCE-FROM" "DEBUG-SOURCE-NAME"
367                "DEBUG-SOURCE-CREATED" "DEBUG-SOURCE-COMPILED"
368                "DEBUG-SOURCE-START-POSITIONS" "DEBUG-SOURCE"
369                "DEBUG-SOURCE-P")
370     :export ("*DEBUGGING-INTERPRETER*" "ACTIVATE-BREAKPOINT"
371              "AMBIGUOUS-DEBUG-VARS" "AMBIGUOUS-VARIABLE-NAME" "BREAKPOINT"
372              "BREAKPOINT-ACTIVE-P" "BREAKPOINT-HOOK-FUNCTION" "BREAKPOINT-INFO"
373              "BREAKPOINT-KIND" "BREAKPOINT-P" "BREAKPOINT-WHAT" "CODE-LOCATION"
374              "CODE-LOCATION-DEBUG-BLOCK" "CODE-LOCATION-DEBUG-FUNCTION"
375              "CODE-LOCATION-DEBUG-SOURCE" "CODE-LOCATION-FORM-NUMBER"
376              "CODE-LOCATION-P" "CODE-LOCATION-TOP-LEVEL-FORM-OFFSET"
377              "CODE-LOCATION-UNKNOWN-P" "CODE-LOCATION=" "DEACTIVATE-BREAKPOINT"
378              "DEBUG-BLOCK" "DEBUG-BLOCK-ELSEWHERE-P" "DEBUG-BLOCK-P"
379              "DEBUG-BLOCK-SUCCESSORS" "DEBUG-CONDITION" "DEBUG-ERROR"
380              "DEBUG-FUNCTION" "DEBUG-FUNCTION-FUNCTION" "DEBUG-FUNCTION-KIND"
381              "DEBUG-FUNCTION-LAMBDA-LIST" "DEBUG-FUNCTION-NAME"
382              "DEBUG-FUNCTION-P" "DEBUG-FUNCTION-START-LOCATION"
383              "DEBUG-FUNCTION-SYMBOL-VARIABLES"
384              "DEBUG-SOURCE-ROOT-NUMBER" "DEBUG-VAR"
385              "DEBUG-VAR-ID" "DEBUG-VAR-INFO-AVAILABLE"
386              "DEBUG-VAR-SYMBOL-NAME" "DEBUG-VAR-P" "DEBUG-VAR-PACKAGE-NAME"
387              "DEBUG-VAR-SYMBOL" "DEBUG-VAR-VALID-VALUE"
388              "DEBUG-VAR-VALIDITY" "DEBUG-VAR-VALUE"
389              "DELETE-BREAKPOINT" "DO-BLOCKS"
390              "DO-DEBUG-BLOCK-LOCATIONS" "DO-DEBUG-FUNCTION-BLOCKS"
391              "DO-DEBUG-FUNCTION-VARIABLES" "EVAL-IN-FRAME"
392              "FORM-NUMBER-TRANSLATIONS" "FRAME" "FRAME-CATCHES"
393              "FRAME-CODE-LOCATION" "FRAME-DEBUG-FUNCTION" "FRAME-DOWN"
394              "FRAME-FUNCTION-MISMATCH" "FRAME-NUMBER" "FRAME-P" "FRAME-UP"
395              "FUNCTION-DEBUG-FUNCTION" "FUNCTION-END-COOKIE-VALID-P"
396              "INVALID-CONTROL-STACK-POINTER" "INVALID-VALUE"
397              "LAMBDA-LIST-UNAVAILABLE" "MAKE-BREAKPOINT" "NO-DEBUG-BLOCKS"
398              "NO-DEBUG-FUNCTION-RETURNS" "NO-DEBUG-INFO" "PREPROCESS-FOR-EVAL"
399              "RETURN-FROM-FRAME" "SOURCE-PATH-CONTEXT"
400              "TOP-FRAME" "UNHANDLED-DEBUG-CONDITION" "UNKNOWN-CODE-LOCATION"
401              "UNKNOWN-CODE-LOCATION-P" "UNKNOWN-DEBUG-VAR"
402              "CODE-LOCATION-KIND" "FLUSH-FRAMES-ABOVE"))
403
404  #s(sb-cold:package-data
405     :name "SB!DISASSEM"
406     :doc "private: stuff related to the implementation of the disassembler"
407     :use ("CL" "SB!EXT" "SB!INT")
408     :export ("*DISASSEM-INST-ALIGNMENT-BYTES*"
409              "*DISASSEM-NOTE-COLUMN*" "*DISASSEM-OPCODE-COLUMN-WIDTH*"
410              "*DISASSEM-SCHEDULER-P*" "*DISASSEM-LOCATION-COLUMN-WIDTH*"
411              "ADD-COMMENT-HOOK" "ADD-HOOK" "ADD-NOTE-HOOK"
412              "ARG-VALUE" "CREATE-DSTATE" "DISASSEM-STATE"
413              "DISASSEMBLE-CODE-COMPONENT"
414              "DISASSEMBLE-FUNCTION" "DISASSEMBLE-MEMORY"
415              "DISASSEMBLE-SEGMENT" "DISASSEMBLE-SEGMENTS"
416              "DSTATE-CODE" "DSTATE-CURPOS" "DSTATE-GET-PROP"
417              "DSTATE-NEXTPOS" "DSTATE-SEGMENT-LENGTH"
418              "DSTATE-SEGMENT-SAP" "DSTATE-SEGMENT-START"
419              "FIELD-TYPE" "FIND-INST" "GEN-FIELD-TYPE-DECL-FORM"
420              "GEN-INST-DECL-FORM" "GEN-INST-FORMAT-DECL-FORM"
421              "GET-CODE-SEGMENTS" "GET-FUNCTION-SEGMENTS"
422              "GET-INST-SPACE" "HANDLE-BREAK-ARGS"
423              "INST" "INST-FORMAT" "LABEL-SEGMENTS"
424              "MAYBE-NOTE-ASSEMBLER-ROUTINE"
425              "MAYBE-NOTE-ASSOCIATED-STORAGE-REF"
426              "MAYBE-NOTE-NIL-INDEXED-OBJECT"
427              "MAYBE-NOTE-NIL-INDEXED-SYMBOL-SLOT-REF"
428              "MAYBE-NOTE-SINGLE-STORAGE-REF" "NOTE"
429              "NOTE-CODE-CONSTANT" "PARAMS" "PRIN1-QUOTED-SHORT"
430              "PRIN1-SHORT" "PRINT-BYTES"
431              "PRINT-CURRENT-ADDRESS" "PRINT-FIELD" "PRINT-INST"
432              "PRINT-INST-USING" "PRINT-NOTES-AND-NEWLINE"
433              "PRINT-WORDS" "SAP-REF-DCHUNK" "SEG-DEBUG-FUNCTION"
434              "SEG-LENGTH" "SEG-START" "SEGMENT"
435              "SET-ADDRESS-PRINTING-RANGE" "SET-DISASSEM-PARAMS"
436              "SET-DSTATE-SEGMENT" "SIGN-EXTEND" "SPECIALIZE"
437              "GEN-PRINTER-DEF-FORMS-DEF-FORM" "MAKE-DSTATE"
438              "DEFINE-ARGUMENT-TYPE" "GEN-ARG-TYPE-DEF-FORM"
439              "READ-SIGNED-SUFFIX" "ADD-OFFS-HOOK"
440              "MAKE-MEMORY-SEGMENT" "GEN-PREAMBLE-FORM"
441              "MAKE-SEGMENT" "SEGMENT-OVERFLOW"
442              "SEG-VIRTUAL-LOCATION" "MAKE-DECODED-INST"
443              "DCHUNK" "*DEFAULT-DSTATE-HOOKS*"
444              "MAKE-CODE-SEGMENT" "MAKE-OFFS-HOOK"
445              "DSTATE-SEGMENT" "DSTATE-CUR-OFFS"
446              "PRINC16" "INSTRUCTION" "DEFINE-INSTRUCTION-FORMAT"
447              "DSTATE-NEXT-OFFS" "INSTALL-INST-FLAVORS"
448              "SEG-SAP-MAKER" "DISASSEMBLE-ASSEM-SEGMENT"
449              "GEN-CLEAR-INFO-FORM" "READ-SUFFIX"
450              "MAP-SEGMENT-INSTRUCTIONS" "GEN-FORMAT-DEF-FORM"
451              "SET-LOCATION-PRINTING-RANGE" "MAKE-VECTOR-SEGMENT"
452              "ADD-OFFS-NOTE-HOOK" "ADD-OFFS-COMMENT-HOOK"
453              "DSTATE-CUR-ADDR" "DSTATE-NEXT-ADDR"))
454
455  #!+sb-interpreter
456  #s(sb-cold:package-data
457     :name "SB!EVAL"
458     :doc "private: the implementation of the IR1 interpreter"
459     :use ("CL" "SB!KERNEL" "SB!INT")
460     :export ("*EVAL-STACK-TRACE*" "*INTERNAL-APPLY-NODE-TRACE*"
461              "FLUSH-INTERPRETED-FUNCTION-CACHE" "INTERNAL-EVAL"
462              "INTERPRETED-FUNCTION"
463              "INTERPRETED-FUNCTION-ARGLIST"
464              "INTERPRETED-FUNCTION-CLOSURE"
465              "INTERPRETED-FUNCTION-LAMBDA-EXPRESSION"
466              "INTERPRETED-FUNCTION-NAME"
467              "INTERPRETED-FUNCTION-P"
468              "INTERPRETED-FUNCTION-TYPE"
469              "MAKE-INTERPRETED-FUNCTION"
470              "PRINT-INTERPRETED-FUNCTION-OBJECT"
471              "TRACE-EVAL"))
472
473  #s(sb-cold:package-data
474     :name "SB!EXT"
475     :doc "public: miscellaneous supported extensions to the ANSI Lisp spec"
476     ;; FIXME: Why don't we just USE-PACKAGE %KERNEL here instead of importing?
477     :use ("CL" "SB!ALIEN" "SB!C-CALL" "SB!INT" "SB!SYS")
478     ;; FIXME: If we advertise these as extensions, they should be in the
479     ;; SB!EXT package (and perhaps re-exported from the %KERNEL
480     ;; package) rather than in some other package and reexported from
481     ;; SB!EXT.
482     :import-from (("SB!KERNEL" "WEAK-POINTER-P"))
483     :reexport ("LOAD-FOREIGN" "LOAD-1-FOREIGN" "WEAK-POINTER-P")
484     :export (;; Information about how the program was invoked is
485              ;; nonstandard but very useful.
486              "*POSIX-ARGV*" "POSIX-GETENV"
487
488              ;; People have various good reasons to mess with the GC.
489              "*AFTER-GC-HOOKS*" "*BEFORE-GC-HOOKS*"
490              "*GC-NOTIFY-AFTER*" "*GC-NOTIFY-BEFORE*" "*GC-NOTIFY-STREAM*"
491              "*GC-VERBOSE*"
492              "BYTES-CONSED-BETWEEN-GCS"
493              "GC" "GC-OFF" "GC-ON" "GET-BYTES-CONSED"
494              "*GC-RUN-TIME*"
495              "PURIFY"
496
497              ;; There is no one right way to report progress on
498              ;; hairy compiles.
499              "*COMPILE-PROGRESS*"
500
501              ;; There is no one right way to do DESCRIBE.
502              "*DESCRIBE-INDENTATION-STEP*"
503
504              ;; There is no one right way to do efficiency notes.
505              "*EFFICIENCY-NOTE-COST-THRESHOLD*" "*EFFICIENCY-NOTE-LIMIT*"
506
507              ;; There's no one right way to report errors.
508              "*ENCLOSING-SOURCE-CUTOFF*"
509              "*UNDEFINED-WARNING-LIMIT*"
510
511              ;; and for dedicated users who really want to customize
512              ;; error reporting, we have
513              "DEF-SOURCE-CONTEXT"
514
515              ;; FIXME: These seem like the right thing, but are they
516              ;; consistent with ANSI? (And actually maybe they're not
517              ;; quite the right thing; it might be better to also do
518              ;; WITH-STANDARD-IO-SYNTAX or something.)
519              "*ERROR-PRINT-LENGTH*" "*ERROR-PRINT-LEVEL*" "*ERROR-PRINT-LINES*"
520
521              ;; KLUDGE: CMU CL had
522              ;; "*IGNORE-FLOATING-POINT-UNDERFLOW*", which seemed
523              ;; like a reasonable idea but doesn't seem to be supported
524              ;; now? -- WHN 19991206
525
526              ;; extended declarations..
527              "CONSTANT-FUNCTION" "END-BLOCK" "FREEZE-TYPE"
528              "INHIBIT-WARNINGS"
529              "MAYBE-INLINE" "OPTIMIZE-INTERFACE" "START-BLOCK"
530
531              ;; ..and variables to control compiler policy
532              "*INLINE-EXPANSION-LIMIT*"
533              "*USE-IMPLEMENTATION-TYPES*"
534              "*BYTE-COMPILE-TOP-LEVEL*"
535              "*BYTE-COMPILE-DEFAULT*"
536              "*DERIVE-FUNCTION-TYPES*" ; FIXME FIXME FIXME FIXME..
537
538              ;; a special form for breaking out of our "declarations
539              ;; are assertions" default
540              "TRULY-THE"
541
542              ;; This is something which must exist inside any Common Lisp
543              ;; implementation, and which someone writing a customized toplevel
544              ;; might well want. It seems perverse to hide it from
545              ;; them..
546              "INTERACTIVE-EVAL"
547
548              ;; weak pointers and finalization
549              "FINALIZE" "CANCEL-FINALIZATION"
550              ;; FIXME: "WEAK-POINTER-P" here once it moves from %KERNEL
551              "HASH-TABLE-WEAK-P" "MAKE-WEAK-POINTER"
552              "WEAK-POINTER" "WEAK-POINTER-VALUE"
553
554              ;; If the user knows we're doing IEEE, he might reasonably
555              ;; want to do this stuff.
556              "FLOAT-DENORMALIZED-P"
557              "FLOAT-NAN-P" "FLOAT-TRAPPING-NAN-P"
558              "FLOATING-POINT-INVALID"
559              "FLOAT-INFINITY-P"
560              #!+sb-infinities "SHORT-FLOAT-NEGATIVE-INFINITY"
561              #!+sb-infinities "SHORT-FLOAT-POSITIVE-INFINITY"
562              #!+sb-infinities "SINGLE-FLOAT-NEGATIVE-INFINITY"
563              #!+sb-infinities "SINGLE-FLOAT-POSITIVE-INFINITY"
564              #!+sb-infinities "DOUBLE-FLOAT-NEGATIVE-INFINITY"
565              #!+sb-infinities "DOUBLE-FLOAT-POSITIVE-INFINITY"
566              #!+sb-infinities "LONG-FLOAT-NEGATIVE-INFINITY"
567              #!+sb-infinities "LONG-FLOAT-POSITIVE-INFINITY"
568
569              ;; hacks to work around system limitations
570              "*INTEXP-MAXIMUM-EXPONENT*" ; since we crash hard when
571                                          ; memory is exhausted
572
573              ;; saving Lisp images
574              "SAVE-LISP-AND-DIE"
575
576              ;; miscellaneous useful supported extensions
577              "QUIT"
578
579              ;; RUN-PROGRAM is not only useful for users, but also
580              ;; useful to implement parts of SBCL itself, so we're
581              ;; going to have to implement it anyway, so we might
582              ;; as well support it. And then once we're committed
583              ;; to implementing RUN-PROGRAM, it's nice to have it
584              ;; return a PROCESS object with operations defined on
585              ;; that object.
586              "RUN-PROGRAM"
587              "PROCESS-ALIVE-P" "PROCESS-CLOSE"
588              "PROCESS-CORE-DUMPED" "PROCESS-ERROR" "PROCESS-EXIT-CODE"
589              "PROCESS-INPUT" "PROCESS-KILL" "PROCESS-OUTPUT" "PROCESS-P"
590              "PROCESS-PID" "PROCESS-PLIST" "PROCESS-PTY" "PROCESS-STATUS"
591              "PROCESS-STATUS-HOOK" "PROCESS-WAIT"))
592
593  #s(sb-cold:package-data
594     :name "SB!FORMAT"
595     :doc "private: implementation of FORMAT and friends"
596     :use ("CL" "SB!KERNEL" "SB!EXT" "SB!INT"))
597
598  #s(sb-cold:package-data
599     :name "SB!GRAY"
600     :doc
601 "public: an implementation of the stream-definition-by-user
602 Lisp extension proposal by David N. Gray"
603     :use ("CL" "SB!KERNEL" "SB!EXT" "SB!INT")
604     :export ("FUNDAMENTAL-BINARY-STREAM" "FUNDAMENTAL-BINARY-INPUT-STREAM"
605              "FUNDAMENTAL-BINARY-OUTPUT-STREAM" "FUNDAMENTAL-CHARACTER-STREAM"
606              "FUNDAMENTAL-CHARACTER-INPUT-STREAM"
607              "FUNDAMENTAL-CHARACTER-OUTPUT-STREAM"
608              "FUNDAMENTAL-INPUT-STREAM" "FUNDAMENTAL-OUTPUT-STREAM"
609              "FUNDAMENTAL-STREAM"
610              "STREAM-ADVANCE-TO-COLUMN" "STREAM-CLEAR-INPUT"
611              "STREAM-CLEAR-OUTPUT" "STREAM-FINISH-OUTPUT" "STREAM-FORCE-OUTPUT"
612              "STREAM-FRESH-LINE" "STREAM-LINE-COLUMN" "STREAM-LINE-LENGTH"
613              "STREAM-LISTEN" "STREAM-PEEK-CHAR" "STREAM-READ-BYTE"
614              "STREAM-READ-CHAR" "STREAM-READ-CHAR-NO-HANG" "STREAM-READ-LINE"
615              "STREAM-START-LINE-P" "STREAM-TERPRI" "STREAM-UNREAD-CHAR"
616              "STREAM-WRITE-BYTE" "STREAM-WRITE-CHAR" "STREAM-WRITE-STRING"))
617
618  ;; FIXME: It looks as though it's no longer important to have INSPECT be
619  ;; a separate package. INSPECT functionality is in the ANSI spec, and we
620  ;; might as well implement it with everything else.
621  #s(sb-cold:package-data
622     :name "SB!INSPECT"
623     :doc "private: implementation of INSPECT"
624     :use ("CL" "SB!KERNEL" "SB!EXT" "SB!INT")
625     :export ("*INTERFACE-STYLE*" "REMOVE-ALL-DISPLAYS"
626              "REMOVE-OBJECT-DISPLAY" "SHOW-OBJECT"))
627
628  #s(sb-cold:package-data
629     :name "SB!INT"
630     :doc
631 "private: miscellaneous unsupported extensions to the ANSI spec. Most of
632 the stuff in here originated in CMU CL's EXTENSIONS package and is
633 retained, possibly temporariliy, because it might be used internally."
634     :use ("CL" "SB!ALIEN" "SB!C-CALL" "SB!SYS")
635     ;; FIXME: RATIOP should probably not go through this package but be
636     ;; called directly from SB!KERNEL, unless it's implemented as
637     ;; TYPEP X 'RATIO in which case it doesn't need to be in SB!KERNEL.
638     ;; And BIGNUMP and FIXNUMP should probably just be in this package,
639     ;; even if they have low-level-optimized implementations. (Their
640     ;; *meanings* aren't low-level, even if their implementations are.)
641     :import-from (("SB!KERNEL" "BIGNUMP" "FIXNUMP" "RATIOP"))
642     :reexport ("BIGNUMP" "FIXNUMP" "RATIOP")
643     :export ("*AFTER-SAVE-INITIALIZATIONS*" "*BEFORE-SAVE-INITIALIZATIONS*"
644
645              "*ALL-MODIFIER-NAMES*"
646              "*BACKUP-EXTENSION*"
647
648              ;; INFO stuff doesn't belong in a user-visible package, we
649              ;; should be able to change it without apology.
650              "*INFO-ENVIRONMENT*"
651              "CLEAR-INFO"
652              "COMPACT-INFO-ENVIRONMENT"
653              "DEFINE-INFO-CLASS" "DEFINE-INFO-TYPE"
654              "DO-INFO"
655              "INFO"
656              "MAKE-INFO-ENVIRONMENT"
657
658              ;; packages grabbed once and for all
659              "*KEYWORD-PACKAGE*" "*CL-PACKAGE*"
660
661              ;; hash mixing operations
662              "MIX" "MIXF"
663
664              ;; Arguably there's no one right value for the system
665              ;; prompt. But Common Lisp makes it easy for you to write
666              ;; your own REPL if you really care, so I'm not convinced we
667              ;; need this as a supported extension.
668              "*PROMPT*"
669
670              ;; I'm not convinced that FDEFINITIONs are the ideal
671              ;; solution, so exposing ways to peek into the system
672              ;; seems undesirable, since it makes it harder to get
673              ;; rid of FDEFINITIONs entirely later.
674              "*SETF-FDEFINITION-HOOK*"
675
676              ;; useful but non-standard user-level functions..
677              "ASSQ" "DELQ" "MEMQ"
678              "%FIND-PACKAGE-OR-LOSE" "FIND-UNDELETED-PACKAGE-OR-LOSE"
679
680              ;; ..and macros
681              "COLLECT"
682              "DO-ANONYMOUS" "DOHASH" "DOVECTOR"
683              "ITERATE"
684              "LETF" "LETF*"
685              "ONCE-ONLY"
686              "DEF!MACRO" "DEF!METHOD" "DEF!STRUCT" "DEF!TYPE"
687
688              ;; encapsulation
689              "ARGUMENT-LIST"
690              "BASIC-DEFINITION"
691              "ENCAPSULATE" "ENCAPSULATED-DEFINITION" "ENCAPSULATED-P"
692              "UNENCAPSULATE"
693
694              ;; various CHAR-CODEs
695              "BELL-CHAR-CODE" "ESCAPE-CHAR-CODE" "FORM-FEED-CHAR-CODE"
696              "RETURN-CHAR-CODE" "RUBOUT-CHAR-CODE" "TAB-CHAR-CODE"
697
698              ;; handy user-level/basically-portable DEFTYPEs
699              "INDEX" 
700
701              ;; nonstandard type predicates
702              "INSTANCEP"
703              "DOUBLE-FLOATP"
704              "LOGICAL-PATHNAME-P"
705              "LONG-FLOATP"
706              "SHORT-FLOATP"
707              "SINGLE-FLOATP"
708
709              ;; symbol-hacking idioms
710              "CONCAT-PNAMES" "KEYWORDICATE" "SYMBOLICATE"
711
712              ;; search lists (FIXME: should go away)
713              "ENUMERATE-SEARCH-LIST"
714              "CLEAR-SEARCH-LIST"
715              "SEARCH-LIST"
716              "SEARCH-LIST-DEFINED-P"
717
718              ;; certainly doesn't belong in public extensions
719              ;; FIXME: maybe belongs in %KERNEL with other typesystem stuff?
720              "CONSTANT-ARGUMENT"
721
722              ;; FIXME: Maybe this isn't used any more? And if it is,
723              ;; it probably needs a better name, since SPECIAL things
724              ;; are so obnoxious in Common Lisp.
725              "E"
726
727              ;; various internal defaults
728              "*DEFAULT-PACKAGE-USE-LIST*"
729              "DEFAULT-INIT-CHAR"
730              "*LOAD-SOURCE-TYPES*" "*LOAD-OBJECT-TYPES*"
731
732              ;; hash caches
733              "DEFINE-HASH-CACHE"
734              "DEFUN-CACHED"
735
736              ;; time
737              "FORMAT-DECODED-TIME"
738              "FORMAT-UNIVERSAL-TIME"
739              "PARSE-TIME"
740
741              ;; indenting
742              "MAKE-INDENTING-STREAM"
743              "INDENTING-FURTHER"
744
745              ;; stream commands, used by the debugger
746              "GET-STREAM-COMMAND" "MAKE-STREAM-COMMAND" "STREAM-COMMAND"
747              "STREAM-COMMAND-ARGS" "STREAM-COMMAND-NAME" "STREAM-COMMAND-P"
748
749              ;; used for FORMAT tilde paren
750              "MAKE-CASE-FROB-STREAM"
751
752              ;; debuggers' little helpers
753              #!+sb-show "*/SHOW*"
754              "/SHOW"  "/NOSHOW"
755              "/XHOW"  "/NOXHOW"
756              "/SHOW0" "/NOSHOW0"
757
758              ;; cross-compilation bootstrap hacks which turn into
759              ;; placeholders in a target system
760              "UNCROSS" 
761
762              ;; misc. utilities used internally
763              "LEGAL-FUNCTION-NAME-P"
764              "FUNCTION-NAME-BLOCK-NAME"
765              #!-sb-infinities "INFINITE"
766              "LISTEN-SKIP-WHITESPACE"
767              "PACKAGE-INTERNAL-SYMBOL-COUNT" "PACKAGE-EXTERNAL-SYMBOL-COUNT"
768              "PROPER-LIST-OF-LENGTH-P"
769              "LIST-OF-LENGTH-AT-LEAST-P"
770              "READ-SEQUENCE-OR-DIE"
771              "RENAME-KEYWORD-ARGS"
772              "REQUIRED-ARGUMENT"
773              "UNIX-NAMESTRING" ; FIXME: perhaps belongs in package %UNIX
774              "FEATUREP"
775              "FLUSH-STANDARD-OUTPUT-STREAMS"
776              "MAKE-GENSYM-LIST"
777
778              ;; These could be moved back into SB!EXT if someone has
779              ;; compelling reasons, but hopefully we can get by
780              ;; without supporting them, at least not as publicly
781              ;; accessible things with fixed interfaces.
782              "DEFAULT-DIRECTORY"
783              "FILE-COMMENT"
784              "GET-FLOATING-POINT-MODES" "SET-FLOATING-POINT-MODES"
785              "WITH-FLOAT-TRAPS-MASKED"
786              "DEFINE-HASH-TABLE-TEST"
787              "*GC-INHIBIT-HOOK*"
788
789              ;; not used any more, I think -- WHN 19991206
790              #+nil
791              ("SERVE-BUTTON-PRESS"
792               "SERVE-BUTTON-RELEASE" "SERVE-CIRCULATE-NOTIFY"
793               "SERVE-CIRCULATE-REQUEST" "SERVE-CLIENT-MESSAGE"
794               "SERVE-COLORMAP-NOTIFY" "SERVE-CONFIGURE-NOTIFY"
795               "SERVE-CONFIGURE-REQUEST" "SERVE-CREATE-NOTIFY"
796               "SERVE-DESTROY-NOTIFY" "SERVE-ENTER-NOTIFY" "SERVE-EXPOSURE"
797               "SERVE-FOCUS-IN" "SERVE-FOCUS-OUT" "SERVE-GRAPHICS-EXPOSURE"
798               "SERVE-GRAVITY-NOTIFY" "SERVE-KEY-PRESS" "SERVE-KEY-RELEASE"
799               "SERVE-LEAVE-NOTIFY" "SERVE-MAP-NOTIFY" "SERVE-MAP-REQUEST"
800               "SERVE-MOTION-NOTIFY" "SERVE-NO-EXPOSURE" "SERVE-PROPERTY-NOTIFY"
801               "SERVE-REPARENT-NOTIFY" "SERVE-RESIZE-REQUEST"
802               "SERVE-SELECTION-CLEAR" "SERVE-SELECTION-NOTIFY"
803               "SERVE-SELECTION-REQUEST" "SERVE-UNMAP-NOTIFY"
804               "SERVE-VISIBILITY-NOTIFY")))
805
806  #s(sb-cold:package-data
807     :name "SB!ITERATE"
808     :doc "private: implementation of an iteration facility used by PCL"
809     :use ("CL" "SB!WALKER")
810     :export ("ITERATE" "ITERATE*" "GATHERING" "GATHER"
811              "WITH-GATHERING" "INTERVAL" "ELEMENTS"
812              "LIST-ELEMENTS" "LIST-TAILS" "PLIST-ELEMENTS"
813              "EACHTIME" "WHILE" "UNTIL" "COLLECTING" "JOINING"
814              "MAXIMIZING" "MINIMIZING" "SUMMING"
815              "*ITERATE-WARNINGS*"))
816
817  #s(sb-cold:package-data
818     :name "SB!KERNEL"
819     :doc
820 "private: Theoretically this 'hides state and types used for package
821 integration' (said CMU CL architecture.tex) and that probably was and
822 is a good idea, but see SB-SYS for blurring of boundaries."
823     :use ("CL" "SB!ALIEN" "SB!ALIEN-INTERNALS" "SB!BIGNUM"
824           "SB!EXT" "SB!INT" "SB!SYS")
825     :import-from (("SB!C-CALL" "VOID"))
826     :reexport ("DEF!STRUCT" "DEF!MACRO" "VOID")
827     :export ("%ACOS" "%ACOSH" "%ARRAY-AVAILABLE-ELEMENTS"
828              "%ARRAY-DATA-VECTOR" "%ARRAY-DIMENSION"
829              "%ARRAY-DISPLACED-P"
830              "%ARRAY-DISPLACEMENT" "%ARRAY-FILL-POINTER"
831              "%ARRAY-FILL-POINTER-P" "%ASIN" "%ASINH"
832              "%ATAN" "%ATAN2" "%ATANH"
833              "%CALLER-FRAME-AND-PC" "%CHECK-BOUND" "%CLOSURE-FUNCTION"
834              "%CLOSURE-INDEX-REF" "%COS" "%COS-QUICK"
835              "%COSH" "%DEPOSIT-FIELD"
836              "%DOUBLE-FLOAT" "%DPB" "%EXP" "%EXPM1"
837              "%FUNCTION-HEADER-ARGLIST"
838              "%FUNCTION-HEADER-NAME" "%FUNCTION-HEADER-TYPE"
839              "%HYPOT" "%INSTANCE-SET-CONDITIONAL" "%LDB"
840              "%LOG" "%LOGB" "%LOG10" "%LOG1P" "%LONG-FLOAT"
841              "%MAKE-COMPLEX" "%MAKE-FUNCALLABLE-INSTANCE" "%MAKE-RATIO"
842              "%MAP" "%MAP-TO-SIMPLE-VECTOR-ARITY-1" "%MAP-TO-LIST-ARITY-1"
843              "%MAP-TO-NIL-ON-SEQUENCE" "%MAP-TO-NIL-ON-SIMPLE-VECTOR"
844              "%MAP-TO-NIL-ON-VECTOR" "%MASK-FIELD" "%NEGATE" "%POW"
845              "%RAW-BITS" "%RAW-REF-COMPLEX-DOUBLE"
846              "%RAW-REF-COMPLEX-LONG"
847              "%RAW-REF-COMPLEX-SINGLE" "%RAW-REF-DOUBLE"
848              "%RAW-REF-LONG"
849              "%RAW-REF-SINGLE" "%RAW-SET-COMPLEX-DOUBLE"
850              "%RAW-SET-COMPLEX-LONG" "%RAW-SET-COMPLEX-SINGLE"
851              "%RAW-SET-DOUBLE" "%RAW-SET-LONG" "%RAW-SET-SINGLE"
852              "%SCALB" "%SCALBN" "%SET-FUNCALLABLE-INSTANCE-FUNCTION"
853              "%SET-FUNCALLABLE-INSTANCE-INFO" "%SET-RAW-BITS"
854              "%SET-SAP-REF-16" "%SET-SAP-REF-32" "%SET-SAP-REF-64"
855              "%SET-SAP-REF-8" "%SET-SAP-REF-DOUBLE" "%SET-SAP-REF-LONG"
856              "%SET-SAP-REF-SAP" "%SET-SAP-REF-SINGLE"
857              "%SET-SIGNED-SAP-REF-16" "%SET-SIGNED-SAP-REF-32"
858              "%SET-SIGNED-SAP-REF-64" "%SET-SIGNED-SAP-REF-8"
859              "%SET-STACK-REF" "%SIN" "%SIN-QUICK"
860              "%SINGLE-FLOAT" "%SINH" "%SP-SET-DEFINITION"
861              "%SP-SET-PLIST"
862              "%SQRT" "%SXHASH-SIMPLE-STRING"
863              "%SXHASH-SIMPLE-SUBSTRING" "%TAN" "%TAN-QUICK"
864              "%TANH" "%UNARY-ROUND" "%UNARY-TRUNCATE"
865              "%WITH-ARRAY-DATA" "WITH-ARRAY-DATA"
866              "*ALREADY-MAYBE-GCING*"
867              "*CURRENT-LEVEL*" "*EMPTY-TYPE*"
868              "*EVAL-STACK-TOP*" "*GC-INHIBIT*"
869              "*NEED-TO-COLLECT-GARBAGE*"
870              "*PRETTY-PRINTER*" "*UNIVERSAL-TYPE*"
871              "*UNPARSE-FUNCTION-TYPE-SIMPLIFY*" "*WILD-TYPE*"
872              "32BIT-LOGICAL-AND" "32BIT-LOGICAL-ANDC1"
873              "32BIT-LOGICAL-ANDC2"
874              "32BIT-LOGICAL-EQV" "32BIT-LOGICAL-NAND"
875              "32BIT-LOGICAL-NOR"
876              "32BIT-LOGICAL-NOT" "32BIT-LOGICAL-OR"
877              "32BIT-LOGICAL-ORC1"
878              "32BIT-LOGICAL-ORC2" "32BIT-LOGICAL-XOR"
879              "ALIEN-TYPE-TYPE"
880              "ALIEN-TYPE-TYPE-ALIEN-TYPE" "ALIEN-TYPE-TYPE-P"
881              "ALLOCATE-VECTOR"
882              "ALWAYS-SUBTYPEP" "ARGS-TYPE" "ARGS-TYPE-ALLOWP"
883              "ARGS-TYPE-KEYP"
884              "ARGS-TYPE-KEYWORDS" "ARGS-TYPE-OPTIONAL" "ARGS-TYPE-P"
885              "ARGS-TYPE-REQUIRED" "ARGS-TYPE-REST"
886              "ARRAY-HEADER-P" "ARRAY-TYPE" "ARRAY-TYPE-COMPLEXP"
887              "ARRAY-TYPE-DIMENSIONS" "ARRAY-TYPE-ELEMENT-TYPE"
888              "ARRAY-TYPE-P"
889              "ARRAY-TYPE-SPECIALIZED-ELEMENT-TYPE" "ASH-INDEX"
890              "ASSERT-ERROR" "BASE-CHAR-P"
891              "!BEGIN-COLLECTING-COLD-INIT-FORMS"
892              "BINDING-STACK-POINTER-SAP" "BIT-BASH-AND"
893              "BIT-BASH-ANDC1"
894              "BIT-BASH-ANDC2" "BIT-BASH-CLEAR" "BIT-BASH-COPY"
895              "BIT-BASH-EQV"
896              "BIT-BASH-IOR" "BIT-BASH-LOGNAND" "BIT-BASH-LOGNOR"
897              "BIT-BASH-NOT"
898              "BIT-BASH-ORC1" "BIT-BASH-ORC2" "BIT-BASH-SET"
899              "BIT-BASH-XOR"
900              "BIT-INDEX" "BOGUS-ARGUMENT-TO-VALUES-LIST-ERROR"
901              "BOOLE-CODE"
902              "BYTE-SPECIFIER" "CALLABLE" "CASE-BODY-ERROR"
903              "CHECK-FOR-CIRCULARITY" "CHECK-TYPE-ERROR"
904              "CODE-COMPONENT" "CODE-COMPONENT-P"
905              "CODE-DEBUG-INFO" "CODE-HEADER-REF" "CODE-HEADER-SET"
906              "CODE-INSTRUCTIONS" "COERCE-TO-BIT-VECTOR" "COERCE-TO-FUNCTION"
907              "COERCE-TO-LIST" "COERCE-TO-SIMPLE-STRING"
908              "COERCE-TO-SIMPLE-VECTOR" "COERCE-TO-VECTOR"
909              "*COLD-INIT-COMPLETE-P*"
910              "!COLD-INIT-FORMS" "COMPLEX-DOUBLE-FLOAT-P"
911              "COMPLEX-FLOAT-P" "COMPLEX-LONG-FLOAT-P"
912              "COMPLEX-RATIONAL-P" "COMPLEX-SINGLE-FLOAT-P"
913              "COMPLEX-VECTOR-P" "CONSED-SEQUENCE" "CONSTANT" "CONSTANT-TYPE"
914              "CONSTANT-TYPE-P" "CONSTANT-TYPE-TYPE"
915              "CONTAINING-INTEGER-TYPE"
916              "CONTROL-STACK-POINTER-SAP" "COPY-FROM-SYSTEM-AREA"
917              "COPY-NUMERIC-TYPE" "COPY-TO-SYSTEM-AREA"
918              "COPY-BYTE-VECTOR-TO-SYSTEM-AREA"
919              "CSUBTYPEP" "CTYPE" "TYPE-HASH-VALUE"
920              "CTYPE-OF" "CTYPE-P" "CTYPEP" "CURRENT-FP" "CURRENT-SP"
921              "DATA-VECTOR-REF" "DATA-VECTOR-SET" "DECODE-DOUBLE-FLOAT"
922              "DECODE-LONG-FLOAT" "DECODE-SINGLE-FLOAT" "DESCEND-INTO"
923              "DIVISION-BY-ZERO-ERROR"
924              "DOUBLE-FLOAT-EXPONENT" "DOUBLE-FLOAT-HIGH-BITS"
925              "DOUBLE-FLOAT-INT-EXPONENT" "DOUBLE-FLOAT-LOW-BITS"
926              "DOUBLE-FLOAT-SIGNIFICAND"
927              "DOUBLE-FLOAT-P" "FLOAT-WAIT"
928              "DYNAMIC-SPACE-FREE-POINTER"
929              "!DEFUN-FROM-COLLECTED-COLD-INIT-FORMS"
930              "ERROR-NUMBER-OR-LOSE" "FDOCUMENTATION" "FILENAME"
931              "FIND-AND-INIT-OR-CHECK-LAYOUT"
932              "FLOAT-EXPONENT" "FLOAT-FORMAT-DIGITS" "FLOAT-FORMAT-NAME"
933              "FLOAT-FORMAT-MAX" "FLOATING-POINT-EXCEPTION"
934              "FORM" "FUNCALLABLE-INSTANCE-P"
935              "FUNCTION-CODE-HEADER" "FUNCTION-TYPE"
936              "FUNCTION-TYPE-ALLOWP"
937              "FUNCTION-TYPE-KEYP" "FUNCTION-TYPE-KEYWORDS"
938              "FUNCTION-TYPE-NARGS" "FUNCTION-TYPE-OPTIONAL"
939              "FUNCTION-TYPE-P"
940              "FUNCTION-TYPE-REQUIRED" "FUNCTION-TYPE-REST"
941              "FUNCTION-TYPE-RETURNS" "FUNCTION-TYPE-WILD-ARGS"
942              "FUNCTION-WORD-OFFSET" "GET-CLOSURE-LENGTH"
943              "GET-HEADER-DATA"
944              "GET-LISP-OBJ-ADDRESS" "GET-LOWTAG"
945              "GET-TYPE"
946              "HAIRY-DATA-VECTOR-REF" "HAIRY-DATA-VECTOR-SET" "HAIRY-TYPE"
947              "HAIRY-TYPE-CHECK-TEMPLATE-NAME" "HAIRY-TYPE-SPECIFIER"
948              "HANDLE-CIRCULARITY" "IGNORE-IT"
949              "INDEX-TOO-LARGE-ERROR" "INTEGER-DECODE-DOUBLE-FLOAT"
950              "INTEGER-DECODE-LONG-FLOAT" "INTEGER-DECODE-SINGLE-FLOAT"
951              "INTERNAL-ERROR" "INTERNAL-TIME"
952              "INVALID-ARGUMENT-COUNT-ERROR" "INVALID-ARRAY-INDEX-ERROR"
953              "INVALID-UNWIND-ERROR" "IRRATIONAL"
954              "JUST-DUMP-IT-NORMALLY"
955              "KEY-INFO" "KEY-INFO-NAME"
956              "KEY-INFO-P" "KEY-INFO-TYPE"
957              "LAYOUT-DEPTHOID"
958              "LAYOUT-INVALID-ERROR" "LEXENV"
959              "LIST-TO-SIMPLE-STRING*" "LIST-TO-BIT-VECTOR*"
960              "LIST-TO-VECTOR*" 
961              "LONG-FLOAT-EXPONENT" "LONG-FLOAT-EXP-BITS"
962              "LONG-FLOAT-HIGH-BITS"
963              "LONG-FLOAT-LOW-BITS" "LONG-FLOAT-MID-BITS" "LONG-FLOAT-P"
964              "LRA" "LRA-CODE-HEADER" "LRA-P"
965              "MAKE-ALIEN-TYPE-TYPE" "MAKE-ARGS-TYPE"
966              "MAKE-ARRAY-HEADER" "MAKE-ARRAY-TYPE" "MAKE-DOUBLE-FLOAT"
967              "MAKE-FUNCTION-TYPE"
968              "MAKE-KEY-INFO" "MAKE-LISP-OBJ" "MAKE-LONG-FLOAT"
969              "MAKE-MEMBER-TYPE" "MAKE-NAMED-TYPE"
970              "MAKE-NULL-LEXENV" "MAKE-NUMERIC-TYPE"
971              "MAKE-SINGLE-FLOAT" "MAKE-SPECIALIZABLE-ARRAY"
972              "%MAKE-INSTANCE" "MAKE-UNION-TYPE" "MAKE-VALUES-TYPE"
973              "MAYBE-GC" "MEMBER-TYPE" "MEMBER-TYPE-MEMBERS"
974              "MEMBER-TYPE-P" "MERGE-BITS"
975              "DEFMACRO-MUNDANELY" "MUTATOR-SELF"
976              "NAMED-TYPE" "NAMED-TYPE-NAME" "NAMED-TYPE-P"
977              "NATIVE-BYTE-ORDER" "NEGATE"
978              "NEVER-SUBTYPEP" "NIL-FUNCTION-RETURNED-ERROR"
979              "NOT-<=-ERROR" "NOT-=-ERROR"
980              "NOT-DUMPED-AT-ALL"
981              "NUMERIC-CONTAGION" "NUMERIC-TYPE"
982              "NUMERIC-TYPE-CLASS" "NUMERIC-TYPE-COMPLEXP"
983              "NUMERIC-TYPE-FORMAT"
984              "NUMERIC-TYPE-HIGH" "NUMERIC-TYPE-LOW" "NUMERIC-TYPE-P"
985              "OBJECT-NOT-ARRAY-ERROR" "OBJECT-NOT-BASE-CHAR-ERROR"
986              "OBJECT-NOT-BIGNUM-ERROR" "OBJECT-NOT-BIT-VECTOR-ERROR"
987              "OBJECT-NOT-COERCEABLE-TO-FUNCTION-ERROR"
988              "OBJECT-NOT-COMPLEX-ERROR"
989              "OBJECT-NOT-COMPLEX-FLOAT-ERROR"
990              "OBJECT-NOT-COMPLEX-SINGLE-FLOAT-ERROR"
991              "OBJECT-NOT-COMPLEX-LONG-FLOAT-ERROR"
992              "OBJECT-NOT-COMPLEX-DOUBLE-FLOAT-ERROR"
993              "OBJECT-NOT-COMPLEX-RATIONAL-ERROR"
994              "OBJECT-NOT-CONS-ERROR"
995              "OBJECT-NOT-DOUBLE-FLOAT-ERROR" "OBJECT-NOT-FIXNUM-ERROR"
996              "OBJECT-NOT-FLOAT-ERROR" "OBJECT-NOT-FUNCTION-ERROR"
997              "OBJECT-NOT-FUNCTION-OR-SYMBOL-ERROR"
998              "OBJECT-NOT-INSTANCE-ERROR"
999              "OBJECT-NOT-INTEGER-ERROR"
1000              "OBJECT-NOT-LIST-ERROR" "OBJECT-NOT-LONG-FLOAT-ERROR"
1001              "OBJECT-NOT-NUMBER-ERROR"
1002              "OBJECT-NOT-RATIO-ERROR" "OBJECT-NOT-RATIONAL-ERROR"
1003              "OBJECT-NOT-REAL-ERROR" "OBJECT-NOT-SAP-ERROR"
1004              "OBJECT-NOT-SIGNED-BYTE-32-ERROR"
1005              "OBJECT-NOT-SIMPLE-ARRAY-COMPLEX-DOUBLE-FLOAT-ERROR"
1006              "OBJECT-NOT-SIMPLE-ARRAY-COMPLEX-LONG-FLOAT-ERROR"
1007              "OBJECT-NOT-SIMPLE-ARRAY-COMPLEX-SINGLE-FLOAT-ERROR"
1008              "OBJECT-NOT-SIMPLE-ARRAY-DOUBLE-FLOAT-ERROR"
1009              "OBJECT-NOT-SIMPLE-ARRAY-ERROR"
1010              "OBJECT-NOT-SIMPLE-ARRAY-LONG-FLOAT-ERROR"
1011              "OBJECT-NOT-SIMPLE-ARRAY-SINGLE-FLOAT-ERROR"
1012              "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-16-ERROR"
1013              "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-2-ERROR"
1014              "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-32-ERROR"
1015              "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-4-ERROR"
1016              "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-8-ERROR"
1017              "OBJECT-NOT-SIMPLE-ARRAY-SIGNED-BYTE-16-ERROR"
1018              "OBJECT-NOT-SIMPLE-ARRAY-SIGNED-BYTE-30-ERROR"
1019              "OBJECT-NOT-SIMPLE-ARRAY-SIGNED-BYTE-32-ERROR"
1020              "OBJECT-NOT-SIMPLE-ARRAY-SIGNED-BYTE-8-ERROR"
1021              "OBJECT-NOT-SIMPLE-BIT-VECTOR-ERROR"
1022              "OBJECT-NOT-SIMPLE-STRING-ERROR"
1023              "OBJECT-NOT-SIMPLE-VECTOR-ERROR"
1024              "OBJECT-NOT-SINGLE-FLOAT-ERROR" "OBJECT-NOT-STRING-ERROR"
1025              "OBJECT-NOT-INSTANCE-ERROR" "OBJECT-NOT-SYMBOL-ERROR"
1026              "OBJECT-NOT-TYPE-ERROR"
1027              "OBJECT-NOT-UNSIGNED-BYTE-32-ERROR"
1028              "OBJECT-NOT-VECTOR-ERROR" "OBJECT-NOT-WEAK-POINTER-ERROR"
1029              "ODD-KEYWORD-ARGUMENTS-ERROR"
1030              "OUTPUT-OBJECT" "OUTPUT-UGLY-OBJECT"
1031              "PARSE-DEFMACRO" "PARSE-LAMBDA-LIST" "PARSE-UNKNOWN-TYPE"
1032              "PARSE-UNKNOWN-TYPE-SPECIFIER"
1033              "PATHNAME-DESIGNATOR" "PUNT-IF-TOO-LONG"
1034              "READER-PACKAGE-ERROR"
1035              #!+gengc "*SAVED-STATE-CHAIN*"
1036              "SCALE-DOUBLE-FLOAT" "SCALE-LONG-FLOAT"
1037              "SCALE-SINGLE-FLOAT"
1038              "SEQUENCE-END" "SEQUENCE-OF-CHECKED-LENGTH-GIVEN-TYPE"
1039              "SET-HEADER-DATA" "SHIFT-TOWARDS-END"
1040              "SHIFT-TOWARDS-START" "SHRINK-VECTOR" "SIGNED-BYTE-32-P"
1041              "SIMPLE-ARRAY-COMPLEX-DOUBLE-FLOAT-P"
1042              "SIMPLE-ARRAY-COMPLEX-LONG-FLOAT-P"
1043              "SIMPLE-ARRAY-COMPLEX-SINGLE-FLOAT-P"
1044              "SIMPLE-ARRAY-DOUBLE-FLOAT-P" "SIMPLE-ARRAY-LONG-FLOAT-P"
1045              "SIMPLE-ARRAY-P"
1046              "SIMPLE-ARRAY-SINGLE-FLOAT-P"
1047              "SIMPLE-ARRAY-UNSIGNED-BYTE-16-P"
1048              "SIMPLE-ARRAY-UNSIGNED-BYTE-2-P"
1049              "SIMPLE-ARRAY-UNSIGNED-BYTE-32-P"
1050              "SIMPLE-ARRAY-UNSIGNED-BYTE-4-P"
1051              "SIMPLE-ARRAY-UNSIGNED-BYTE-8-P"
1052              "SIMPLE-ARRAY-SIGNED-BYTE-16-P"
1053              "SIMPLE-ARRAY-SIGNED-BYTE-30-P"
1054              "SIMPLE-ARRAY-SIGNED-BYTE-32-P"
1055              "SIMPLE-ARRAY-SIGNED-BYTE-8-P"
1056              "SIMPLE-PACKAGE-ERROR"
1057              "SIMPLE-UNBOXED-ARRAY"
1058              "SINGLE-FLOAT-BITS" "SINGLE-FLOAT-EXPONENT"
1059              "SINGLE-FLOAT-INT-EXPONENT" "SINGLE-FLOAT-P"
1060              "SINGLE-FLOAT-SIGNIFICAND"
1061              "SINGLE-VALUE-TYPE" "SPECIALIZABLE" "SPECIALIZABLE-VECTOR"
1062              "SPECIFIER-TYPE" "STACK-REF"
1063              "STREAMLIKE" "STRINGABLE"
1064              "STRUCTURE-RAW-SLOT-TYPE-AND-SIZE"
1065              "%INSTANCE-LENGTH"
1066              "%INSTANCE-REF" "%INSTANCE-SET"
1067              "STRING-TO-SIMPLE-STRING"
1068              "SYSTEM-AREA-CLEAR"
1069              "SYSTEM-AREA-COPY" "TWO-ARG-*"
1070              "TRY-TO-RENAME-INTERPRETED-FUNCTION-AS-MACRO"
1071              "TWO-ARG-+" "TWO-ARG--"
1072              "TWO-ARG-/" "TWO-ARG-/=" "TWO-ARG-<"
1073              "TWO-ARG-<=" "TWO-ARG-="
1074              "TWO-ARG->" "TWO-ARG->=" "TWO-ARG-AND"
1075              "TWO-ARG-GCD" "TWO-ARG-IOR"
1076              "TWO-ARG-LCM" "TWO-ARG-XOR"
1077              "TYPE-DIFFERENCE" "TYPE-EXPAND"
1078              "TYPE-INTERSECT"
1079              "TYPE-INTERSECTION" "TYPE-SPECIFIER"
1080              "*STANDARD-TYPE-NAMES*" "TYPE-UNION" "TYPE/=" "TYPE="
1081              "TYPES-INTERSECT" "UNBOUND-SYMBOL-ERROR" "UNBOXED-ARRAY"
1082              "UNDEFINED-SYMBOL-ERROR" "UNION-TYPE" "UNION-TYPE-P"
1083              "UNION-TYPE-TYPES" "UNKNOWN-ERROR"
1084              "UNKNOWN-KEYWORD-ARGUMENT-ERROR"
1085              "UNKNOWN-TYPE" "UNKNOWN-TYPE-P"
1086              "UNKNOWN-TYPE-SPECIFIER" "UNSEEN-THROW-TAG-ERROR"
1087              "UNSIGNED-BYTE-32-P" "VALUES-SPECIFIER-TYPE"
1088              "VALUES-SPECIFIER-TYPE-CACHE-CLEAR" "VALUES-SUBTYPEP"
1089              "VALUES-TYPE" "VALUES-TYPE-ALLOWP" "VALUES-TYPE-INTERSECT"
1090              "VALUES-TYPE-INTERSECTION" "VALUES-TYPE-KEYP"
1091              "VALUES-TYPE-KEYWORDS" "VALUES-TYPE-OPTIONAL"
1092              "VALUES-TYPE-P" "VALUES-TYPE-REQUIRED"
1093              "VALUES-TYPE-REST" "VALUES-TYPE-UNION"
1094              "VALUES-TYPES" "VALUES-TYPES-INTERSECT" "VECTOR-T-P"
1095              "VECTOR-TO-VECTOR*" "VECTOR-TO-SIMPLE-STRING*"
1096              "VECTOR-TO-BIT-VECTOR*" "VECTOR-TO-SIMPLE-BIT-VECTOR*"
1097              "VECTOR-OF-CHECKED-LENGTH-GIVEN-LENGTH"
1098              "WITH-CIRCULARITY-DETECTION" "WITH-TYPE-CACHES"
1099              "WRONG-NUMBER-OF-INDICES-ERROR"
1100
1101              "FDEFN" "MAKE-FDEFN" "FDEFN-P"
1102              "FDEFN-NAME" "FDEFN-FUNCTION"
1103              "FDEFN-MAKUNBOUND" "%COERCE-NAME-TO-FUNCTION"
1104              "%COERCE-CALLABLE-TO-FUNCTION"
1105              "FUNCTION-SUBTYPE" "*MAXIMUM-ERROR-DEPTH*"
1106              "%SET-SYMBOL-PLIST" "INFINITE-ERROR-PROTECT"
1107              "FIND-CALLER-NAME"
1108              "%SET-SYMBOL-VALUE" "%SET-SYMBOL-PACKAGE"
1109              "OUTPUT-SYMBOL-NAME"
1110              "FSET" "RAW-DEFINITION"
1111              "INVOKE-MACROEXPAND-HOOK"
1112              "DEFAULT-STRUCTURE-PRINT"
1113              "LAYOUT" "LAYOUT-LENGTH" "RATIOP" "FIXNUMP" "TARGET-FIXNUMP"
1114              "LAMBDA-WITH-ENVIRONMENT" "LAYOUT-PURE" "DSD-RAW-TYPE"
1115              "%COMPILER-DEFSTRUCT"
1116              "%COMPILER-ONLY-DEFSTRUCT" "FUNCTION-%COMPILER-ONLY-DEFSTRUCT"
1117              "DEFSTRUCT-DESCRIPTION" "UNDEFINE-STRUCTURE"
1118              "BIGNUMP" "DD-COPIER" "UNDEFINE-FUNCTION-NAME" "DD-TYPE"
1119              "CLASS-STATE" "INSTANCE"
1120              "*TYPE-SYSTEM-INITIALIZED*" "WEAK-POINTER-P" "FIND-LAYOUT"
1121              "DSD-NAME" "%TYPEP" "DD-RAW-INDEX"
1122              "DD-NAME" "CLASS-SUBCLASSES"
1123              "CLASS-LAYOUT" "CLASS-%NAME"
1124              "DD-RAW-LENGTH" "NOTE-NAME-DEFINED"
1125              "%CODE-CODE-SIZE" "DD-SLOTS"
1126              "%IMAGPART" "DSD-ACCESSOR"
1127              "%CODE-DEBUG-INFO" "DSD-%NAME"
1128              "LAYOUT-CLASS" "LAYOUT-INVALID"
1129              "%FUNCTION-NAME" "DSD-TYPE" "%INSTANCEP"
1130              "DEFSTRUCT-SLOT-DESCRIPTION" "%FUNCTION-ARGLIST"
1131              "%FUNCTION-NEXT" "LAYOUT-CLOS-HASH-LENGTH" "DD-PREDICATE"
1132              "CLASS-PROPER-NAME" "%NOTE-TYPE-DEFINED" "LAYOUT-INFO"
1133              "%SET-INSTANCE-LAYOUT" "DD-DEFAULT-CONSTRUCTOR"
1134              "LAYOUT-OF" "%FUNCTION-SELF" "%REALPART"
1135              "STRUCTURE-CLASS-P" "DSD-INDEX"
1136              "%INSTANCE-LAYOUT" "LAYOUT-CLOS-HASH"
1137              "%FUNCTION-TYPE" "PROCLAIM-AS-FUNCTION-NAME"
1138              "%%COMPILER-DEFSTRUCT" "%NUMERATOR" "CLASS-TYPEP"
1139              "STRUCTURE-CLASS-PRINT-FUNCTION" "DSD-READ-ONLY"
1140              "LAYOUT-INHERITS" "DD-LENGTH" "%CODE-ENTRY-POINTS"
1141              "%DENOMINATOR"
1142              "BYTE-FUNCTION-OR-CLOSURE" "MAKE-STANDARD-CLASS"
1143              "BYTE-FUNCTION-NAME" "CLASS-CELL-TYPEP" "BYTE-CLOSURE"
1144              "FIND-CLASS-CELL" "EXTRACT-FUNCTION-TYPE"
1145              "FUNCALLABLE-STRUCTURE-CLASS"
1146              "%RANDOM-DOUBLE-FLOAT" "%RANDOM-LONG-FLOAT"
1147              "%RANDOM-SINGLE-FLOAT"
1148              "RANDOM-PCL-CLASS" "BASIC-STRUCTURE-CLASS-PRINT-FUNCTION"
1149              "%FUNCALLABLE-INSTANCE-INFO" "*EVAL-STACK*" "RANDOM-CHUNK"
1150              "MAKE-FUNCALLABLE-STRUCTURE-CLASS" "LAYOUT-CLOS-HASH-MAX"
1151              "CLASS-CELL-NAME" "BUILT-IN-CLASS-DIRECT-SUPERCLASSES"
1152              "INITIALIZE-BYTE-COMPILED-FUNCTION"
1153              "RANDOM-LAYOUT-CLOS-HASH"
1154              "CLASS-PCL-CLASS" "FUNCALLABLE-STRUCTURE"
1155              "FUNCALLABLE-INSTANCE-FUNCTION"
1156              "%FUNCALLABLE-INSTANCE-LAYOUT"
1157              "BASIC-STRUCTURE-CLASS" "BYTE-CLOSURE-DATA"
1158              "BYTE-CLOSURE-FUNCTION" "BYTE-FUNCTION" "CLASS-CELL-CLASS"
1159              "FUNCALLABLE-STRUCTURE-CLASS-P" "REGISTER-LAYOUT"
1160              "FUNCALLABLE-INSTANCE" "RANDOM-FIXNUM-MAX"
1161              "MAKE-RANDOM-PCL-CLASS" "INSTANCE-LAMBDA"
1162              "%FUNCALLABLE-INSTANCE-LEXENV" "%MAKE-SYMBOL"
1163              "%FUNCALLABLE-INSTANCE-FUNCTION" "SYMBOL-HASH"
1164
1165              "MAKE-UNDEFINED-CLASS" "CLASS-DIRECT-SUPERCLASSES" "MAKE-LAYOUT"
1166              "BYTE-FUNCTION-TYPE"
1167              "REDEFINE-LAYOUT-WARNING" "SLOT-CLASS"
1168              "INSURED-FIND-CLASS" "CONDITION-FUNCTION-NAME"
1169
1170              ;; FIXME: These error-handling things probably belong 
1171              ;; the SB-INT package, not here.
1172              "SIMPLE-CONTROL-ERROR" "SIMPLE-FILE-ERROR"
1173              "SIMPLE-PROGRAM-ERROR" "SIMPLE-STYLE-WARNING" "STYLE-WARN"
1174
1175              "!COLD-INIT"
1176              "!GLOBALDB-COLD-INIT" "!FDEFN-COLD-INIT"
1177              "!TYPE-CLASS-COLD-INIT" "!TYPEDEFS-COLD-INIT"
1178              "!ALIEN-TYPE-COLD-INIT" "!CLASSES-COLD-INIT"
1179              "!EARLY-TYPE-COLD-INIT" "!LATE-TYPE-COLD-INIT"
1180              "!TARGET-TYPE-COLD-INIT" "!RANDOM-COLD-INIT"
1181              "!FILESYS-COLD-INIT" "!READER-COLD-INIT"
1182              "STREAM-COLD-INIT-OR-RESET" "!LOADER-COLD-INIT"
1183              "!PACKAGE-COLD-INIT" "SIGNAL-COLD-INIT-OR-REINIT"
1184              "!SET-SANE-COOKIE-DEFAULTS" "!VM-TYPE-COLD-INIT"
1185              "!BACKQ-COLD-INIT" "!SHARPM-COLD-INIT"
1186              "!CLASS-FINALIZE" "GC-COLD-INIT-OR-REINIT"
1187
1188              ;; These belong in an "SB!LOAD" package someday.
1189              "*STATIC-FOREIGN-SYMBOLS*" "*ASSEMBLER-ROUTINES*"
1190
1191              ;; Note: These are out of lexicographical order because in CMU CL
1192              ;; they were defined as internal symbols in package "CL"
1193              ;; imported into package "C", as opposed to what we're
1194              ;; doing here, defining them as external symbols in a package
1195              ;; which is used by both "SB!C" and "SB!IMPL". (SBCL's "SB!C" is
1196              ;; directly analogous to CMU CL's "C"; and for this purpose,
1197              ;; SBCL's "SB!IMPL" is analogous to CMU CL's "CL".) As far
1198              ;; as I know there's nothing special about them, so they could
1199              ;; be merged into the same order as everything else in the
1200              ;; in this package. -- WHN 19990911
1201              "STRING>=*" "STRING>*" "STRING=*"
1202              "STRING<=*" "STRING<*" "STRING/=*"
1203              "SHORT-FLOAT-P" "%SVSET" "%SP-STRING-COMPARE" "%SETNTH"
1204              "%SETELT" "%SET-ROW-MAJOR-AREF" "%SET-FILL-POINTER"
1205              "%SET-FDEFINITION" "%SCHARSET" "%SBITSET" "%RPLACD"
1206              "%RPLACA" "%PUT" "%CHARSET" "%BITSET" "%ASET"
1207              "%ARRAY-TYPEP" "%SET-SAP-REF-DESCRIPTOR"))
1208
1209  #s(sb-cold:package-data
1210     :name "SB!LOOP"
1211     :doc "private: implementation details of LOOP"
1212     :use ("CL")
1213     :export ())
1214
1215  #!+mp
1216  #s(sb-cold:package-data
1217     :name "SB!MP"
1218     :doc "public (but unstable): multiprocessing support"
1219     :export ("*ALL-PROCESSES*" "*CURRENT-PROCESS*"
1220              "*CURRENT-STACK-GROUP*" "*INITIAL-STACK-GROUP*"
1221              "*MULTI-PROCESSING*" "ALL-PROCESSES"
1222              "ATOMIC-DECF" "ATOMIC-INCF" "ATOMIC-POP"
1223              "ATOMIC-PUSH" "CURRENT-PROCESS"
1224              "DESTROY-PROCESS" "DISABLE-PROCESS"
1225              "ENABLE-PROCESS" "INIT-STACK-GROUPS"
1226              "LOCK" "MAKE-STACK-GROUP" "MAKE-LOCK"
1227              "MAKE-PROCESS" "PROCESS-ACTIVE-P" "PROCESS-ALIVE-P"
1228              "PROCESS-IDLE-TIME" "PROCESS-INTERRUPT"
1229              "PROCESS-NAME" "PROCESS-PRESET"
1230              "PROCESS-REAL-TIME" "PROCESS-RUN-TIME"
1231              "PROCESS-STATE" "PROCESS-WAIT-UNTIL-FD-USABLE"
1232              "PROCESS-WAIT" "PROCESS-WAIT-WITH-TIMEOUT"
1233              "PROCESS-WHOSTATE" "PROCESS-YIELD" "PROCESSP"
1234              "RESTART-PROCESS" "SHOW-PROCESSES"
1235              "STACK-GROUP-RESUME" "WITHOUT-SCHEDULING"
1236              "WITH-LOCK-HELD"))
1237
1238  #s(sb-cold:package-data
1239     :name "SB!PCL"
1240     :doc
1241 "semi-public: This package includes useful meta-object protocol
1242 extensions, but even they are not guaranteed to be present in
1243 later versions of SBCL, and the other stuff in here is
1244 definitely not guaranteed to be present in later versions of SBCL."
1245     :use ("CL" "SB!ITERATE" "SB!WALKER")
1246     :import-from (("SB!KERNEL" "FUNCALLABLE-INSTANCE-P" "SB!INT" "SB!EXT"))
1247     :reexport ("ADD-METHOD" "ALLOCATE-INSTANCE"
1248                "COMPUTE-APPLICABLE-METHODS"
1249                "ENSURE-GENERIC-FUNCTION"
1250                "MAKE-INSTANCE" "METHOD-QUALIFIERS"
1251                "REMOVE-METHOD")
1252     :export ("ADD-DEPENDENT"
1253              "ADD-DIRECT-METHOD"
1254              "ADD-DIRECT-SUBCLASS"
1255              "CLASS-DEFAULT-INITARGS"
1256              "CLASS-DIRECT-DEFAULT-INITARGS"
1257              "CLASS-DIRECT-SLOTS"
1258              "CLASS-DIRECT-SUBCLASSES"
1259              "CLASS-DIRECT-SUPERCLASSES"
1260              "CLASS-FINALIZED-P"
1261              "CLASS-PRECEDENCE-LIST"
1262              "CLASS-PROTOTYPE"
1263              "CLASS-SLOTS"
1264              "COMPUTE-APPLICABLE-METHODS-USING-CLASSES"
1265              "COMPUTE-CLASS-PRECEDENCE-LIST"
1266              "COMPUTE-DISCRIMINATING-FUNCTION"
1267              "COMPUTE-EFFECTIVE-METHOD"
1268              "COMPUTE-EFFECTIVE-SLOT-DEFINITION"
1269              "COMPUTE-SLOTS"
1270              "DIRECT-SLOT-DEFINITION-CLASS"
1271              "EFFECTIVE-SLOT-DEFINITION-CLASS"
1272              "ENSURE-CLASS"
1273              "ENSURE-CLASS-USING-CLASS"
1274              "ENSURE-GENERIC-FUNCTION-USING-CLASS"
1275              "EQL-SPECIALIZER-INSTANCE"
1276              "EXTRACT-LAMBDA-LIST"
1277              "EXTRACT-SPECIALIZER-NAMES"
1278              "FINALIZE-INHERITANCE"
1279              "FIND-METHOD-COMBINATION"
1280              "FUNCALLABLE-STANDARD-INSTANCE-ACCESS"
1281              "GENERIC-FUNCTION-ARGUMENT-PRECEDENCE-ORDER"
1282              "GENERIC-FUNCTION-DECLARATIONS"
1283              "GENERIC-FUNCTION-LAMBDA-LIST"
1284              "GENERIC-FUNCTION-METHOD-CLASS"
1285              "GENERIC-FUNCTION-METHOD-COMBINATION"
1286              "GENERIC-FUNCTION-METHODS"
1287              "GENERIC-FUNCTION-NAME"
1288              "INTERN-EQL-SPECIALIZER"
1289              "MAKE-METHOD-LAMBDA"
1290              "MAP-DEPENDENTS"
1291              "METHOD-FUNCTION"
1292              "METHOD-GENERIC-FUNCTION"
1293              "METHOD-LAMBDA-LIST"
1294              "METHOD-SPECIALIZERS"
1295              "ACCESSOR-METHOD-SLOT-DEFINITION"
1296              "READER-METHOD-CLASS"
1297              "REMOVE-DEPENDENT"
1298              "REMOVE-DIRECT-METHOD"
1299              "REMOVE-DIRECT-SUBCLASS"
1300              "SET-FUNCALLABLE-INSTANCE-FUNCTION"
1301              "SLOT-BOUNDP-USING-CLASS"
1302              "SLOT-DEFINITION-ALLOCATION"
1303              "SLOT-DEFINITION-INITARGS"
1304              "SLOT-DEFINITION-INITFORM"
1305              "SLOT-DEFINITION-INITFUNCTION"
1306              "SLOT-DEFINITION-LOCATION"
1307              "SLOT-DEFINITION-NAME"
1308              "SLOT-DEFINITION-READERS"
1309              "SLOT-DEFINITION-WRITERS"
1310              "SLOT-DEFINITION-TYPE"
1311              "SLOT-MAKUNBOUND-USING-CLASS"
1312              "SLOT-VALUE-USING-CLASS"
1313              "SPECIALIZER-DIRECT-GENERIC-FUNCTION"
1314              "SPECIALIZER-DIRECT-METHODS"
1315              "STANDARD-INSTANCE-ACCESS"
1316              "UPDATE-DEPENDENT"
1317              "VALIDATE-SUPERCLASS"
1318              "WRITER-METHOD-CLASS"))
1319
1320  #s(sb-cold:package-data
1321     :name "SB!PRETTY"
1322     :doc "private: implementation of pretty-printing"
1323     :use ("CL" "SB!EXT" "SB!INT" "SB!KERNEL")
1324     :export ("PRETTY-STREAM" "PRETTY-STREAM-P" "!PPRINT-COLD-INIT"))
1325
1326  #s(sb-cold:package-data
1327     :name "SB!PROFILE"
1328     :doc "public: the interface to the profiler"
1329     :use ("CL" "SB!EXT" "SB!INT" "SB!KERNEL")
1330     :export ("PROFILE" "REPORT" "RESET" "UNPROFILE"))
1331
1332  #s(sb-cold:package-data
1333     :name "SB!SYS"
1334     :doc
1335 "private: In theory, this \"contains functions and information
1336 necessary for system interfacing\" (said cmu-user.tex at the time
1337 of the SBCL code fork). That probably was and is a good idea, but in
1338 practice, the distinctions between this package and SB-KERNEL
1339 and even SB-VM have become somewhat blurred over the years."
1340     :use ("CL" "SB!EXT" "SB!INT")
1341     :export ("%ASSEMBLER-CODE-TYPE" "%BIND-ALIGNED-SAP"
1342              ;; FIXME: %PRIMITIVE shouldn't be here. (I now know that %SYS
1343              ;; is for OS-dependent stuff. %PRIMITIVE should probably be in
1344              ;; SB!KERNEL.)
1345              "%PRIMITIVE" "%SP-BYTE-BLT" "%SP-FIND-CHARACTER"
1346              "%SP-FIND-CHARACTER-WITH-ATTRIBUTE"
1347              "%SP-REVERSE-FIND-CHARACTER-WITH-ATTRIBUTE"
1348              "%STANDARD-CHAR-P"
1349              "*BEEP-FUNCTION*"
1350              "*LONG-SITE-NAME*" "*SHORT-SITE-NAME*"
1351              "*STDERR*" "*STDIN*"
1352              "*STDOUT*" "*TASK-DATA*"
1353              "*TASK-NOTIFY*" "*TASK-SELF*" "*TTY*" "*TYPESCRIPTPORT*"
1354              "ADD-FD-HANDLER" "ADD-PORT-DEATH-HANDLER"
1355              "ADD-PORT-OBJECT"
1356              "ALLOCATE-SYSTEM-MEMORY"
1357              "BEEP" "BITS" "STRUCTURE!OBJECT"
1358              "STRUCTURE!OBJECT-MAKE-LOAD-FORM"
1359              "BYTES" "C-PROCEDURE" "CHECK<=" "CHECK="
1360              "COMPILER-VERSION"
1361              "DEALLOCATE-SYSTEM-MEMORY"
1362              "DEFAULT-INTERRUPT" "DEFENUMERATION"
1363              "DEFOPERATOR" "DEFRECORD"
1364              "DEPORT-BOOLEAN" "DEPORT-INTEGER"
1365              "DO-DO-BODY" "DOUBLE-FLOAT-RADIX"
1366              "ENABLE-INTERRUPT" "ENUMERATION"
1367              "FD-STREAM" "FD-STREAM-FD"
1368              "FD-STREAM-P" "FIND-IF-IN-CLOSURE"
1369              "FOREIGN-SYMBOL-ADDRESS" "FOREIGN-SYMBOL-ADDRESS-AS-INTEGER"
1370              "GET-PAGE-SIZE" "GET-SYSTEM-INFO"
1371              "IGNORE-INTERRUPT"
1372              "INT-SAP" "INVALIDATE-DESCRIPTOR" "IO-TIMEOUT"
1373              "LISP-STREAM" "LONG-FLOAT-RADIX" "LONG-WORDS"
1374              "MACRO" "MAKE-FD-STREAM" "MAKE-OBJECT-SET" "MAP-PORT"
1375              "NATURALIZE-BOOLEAN" "NATURALIZE-INTEGER"
1376              "NULL-TERMINATED-STRING" "OBJECT-SET-OPERATION"
1377              "OS-COLD-INIT-OR-REINIT" "OS-CONTEXT-T" "OUTPUT-RAW-BYTES"
1378              "PARSE-BODY" "PERQ-STRING" "POINTER"
1379              "POINTER<" "POINTER>" "PORT" "POSITIVE-PRIMEP" "PUSH-USING-SETQ"
1380              "READ-N-BYTES" "REALLOCATE-SYSTEM-MEMORY" "RECORD-SIZE"
1381              "REMOVE-FD-HANDLER" "REMOVE-PORT-DEATH-HANDLER"
1382              "REMOVE-PORT-OBJECT"
1383              "RESOLVE-LOADED-ASSEMBLER-REFERENCES"
1384              "SAP+" "SAP-" "SAP-INT" "SAP-INT-TYPE"
1385              "SAP-REF-16" "SAP-REF-32" "SAP-REF-64" "SAP-REF-8"
1386              "SAP-REF-DESCRIPTOR"
1387              "SAP-REF-DOUBLE" "SAP-REF-LONG"
1388              "SAP-REF-SAP" "SAP-REF-SINGLE"
1389              "SAP<" "SAP<=" "SAP=" "SAP>" "SAP>="
1390              "SCRUB-CONTROL-STACK" "SERVE-ALL-EVENTS"
1391              "SERVE-EVENT" "SERVER" "SERVER-MESSAGE"
1392              "SHORT-FLOAT-RADIX"
1393              "SIGNED-SAP-REF-16" "SIGNED-SAP-REF-32"
1394              "SIGNED-SAP-REF-64" "SIGNED-SAP-REF-8"
1395              "SINGLE-FLOAT-RADIX" "SYMBOL-MACRO-LET"
1396              "SYSTEM-AREA-POINTER" "SYSTEM-AREA-POINTER-P" "VECTOR-SAP"
1397              "WAIT-UNTIL-FD-USABLE" "WITH-ENABLED-INTERRUPTS"
1398              "WITH-FD-HANDLER"
1399              "WITH-INTERRUPTS" "WITH-REPLY-PORT" "WITHOUT-GCING"
1400              "WITHOUT-INTERRUPTS" "WORDS"
1401              "ALLOCATE-SYSTEM-MEMORY-AT"
1402              "GET-DYNAMIC-FOREIGN-SYMBOL-ADDRESS"))
1403
1404  #s(sb-cold:package-data
1405     :name "SB!UNIX"
1406     :doc
1407 "private: a wrapper layer for SBCL itself to use when talking
1408 with an underlying Unix-y operating system.
1409 This was a public package in CMU CL, but that was different.
1410 CMU CL's UNIX package tried to provide a comprehensive,
1411 stable Unix interface suitable for the end user.
1412 This package only tries to implement what happens to be
1413 needed by the current implementation of SBCL, and makes
1414 no guarantees of interface stability."
1415     :use ("CL" "SB!ALIEN" "SB!C-CALL" "SB!SYS" "SB!EXT" "SB!INT")
1416     :export ("CADDR-T" "D-INO" "D-NAME" "D-NAMLEN" "D-OFF" "D-RECLEN"
1417              "DADDR-T" "DEV-T" "DIRECT" "EXECGRP" "EXECOTH" "EXECOWN" "F-DUPFD"
1418              "F-GETFD" "F-GETFL" "F-GETOWN" "F-SETFD" "F-SETFL" "F-SETOWN"
1419              "FAPPEND" "FASYNC" "FCREAT" "FEXCL" "FIONREAD" "FNDELAY" "FTRUNC"
1420              "F_OK" "GET-UNIX-ERROR-MSG" "GET-ERRNO" "GID-T"
1421              "INO-T" "IT-INTERVAL" "IT-VALUE"
1422              "ITIMERVAL" "UNIX-SETITIMER" "UNIX-GETITIMER"
1423              "KBDCGET" "KBDCRESET" "KBDCRST" "KBDCSET"
1424              "KBDCSSTD" "KBDGCLICK" "KBDSCLICK" "KBDSGET" "L_INCR" "L_SET"
1425              "L_XTND" "OFF-T" "O_APPEND" "O_CREAT" "O_EXCL" "O_RDONLY" "O_RDWR"
1426              "O_TRUNC" "O_WRONLY" "READGRP" "READOTH" "READOWN" "RLIM-CUR"
1427              "RLIM-MAX" "RLIMIT" "RU-IDRSS" "RU-INBLOCK" "RU-ISRSS" "RU-IXRSS"
1428              "RU-MAJFLT" "RU-MAXRSS" "RU-MINFLT" "RU-MSGRCV" "RU-MSGSND"
1429              "RU-NIVCSW" "RU-NSIGNALS" "RU-NSWAP" "RU-NVCSW" "RU-OUBLOCK"
1430              "RU-STIME" "RU-UTIME" "RUSAGE_CHILDREN" "RUSAGE_SELF" "RUSEAGE"
1431              "R_OK" "S-IEXEC" "S-IFBLK" "S-IFCHR" "S-IFDIR" "S-IFLNK" "S-IFMT"
1432              "S-IFREG" "S-IFSOCK" "S-IREAD" "S-ISGID" "S-ISUID" "S-ISVTX"
1433              "S-IWRITE" "SAVETEXT" "SC-MASK" "SC-ONSTACK" "SC-PC" "SETGIDEXEC"
1434              "SETUIDEXEC" "SG-ERASE" "SG-FLAGS" "SG-ISPEED" "SG-KILL"
1435              "SG-OSPEED" "SGTTYB" "SIZE-T" "ST-ATIME" "ST-BLKSIZE"
1436              "ST-BLOCKS" "ST-CTIME" "ST-DEV" "ST-GID" "ST-MODE" "ST-MTIME"
1437              "ST-NLINK" "ST-RDEV" "ST-SIZE" "ST-UID" "STAT" "SWBLK-T" "T-BRKC"
1438              "T-DSUSPC" "T-EOFC" "T-FLUSHC" "T-INTRC" "T-LNEXTC" "T-QUITC"
1439              "T-RPRNTC" "T-STARTC" "T-STOPC" "T-SUSPC" "T-WERASC" "TCHARS"
1440              "TERMINAL-SPEEDS" "TIME-T" "TIMEVAL" "TIMEZONE" "TIOCFLUSH"
1441              "TIOCGETC" "TIOCGETP" "TIOCGLTC" "TIOCGPGRP" "TIOCGWINSZ"
1442              "TIOCNOTTY" "TIOCSETC" "TIOCSETP" "TIOCSLTC" "TIOCSPGRP"
1443              "TIOCSWINSZ" "TTY-CBREAK" "TTY-CRMOD" "TTY-LCASE"
1444              "TTY-RAW" "TTY-TANDEM" "TV-SEC" "TV-USEC" "TZ-DSTTIME"
1445              "TZ-MINUTESWEST" "UID-T" "UNIX-ACCEPT" "UNIX-ACCESS" "UNIX-BIND"
1446              "UNIX-CHDIR" "UNIX-CHMOD" "UNIX-CHOWN" "UNIX-CLOSE" "UNIX-CONNECT"
1447              "UNIX-CREAT" "UNIX-CURRENT-DIRECTORY" "UNIX-DUP" "UNIX-DUP2"
1448              "UNIX-EXECVE" "UNIX-EXIT" "UNIX-FCHMOD" "UNIX-FCHOWN"
1449              "UNIX-FCNTL" "UNIX-FD" "UNIX-FILE-MODE" "UNIX-FORK" "UNIX-FSTAT"
1450              "UNIX-FSYNC" "UNIX-FTRUNCATE" "UNIX-GETDTABLESIZE" "UNIX-GETEGID"
1451              "UNIX-GETGID" "UNIX-GETHOSTID" "UNIX-GETHOSTNAME"
1452              "UNIX-GETPAGESIZE"  "UNIX-GETPEERNAME" "UNIX-GETPGRP"
1453              "UNIX-GETPID" "UNIX-GETPPID" "UNIX-GETRUSAGE"
1454              "UNIX-GETSOCKNAME" "UNIX-GETTIMEOFDAY" "UNIX-GETUID" "UNIX-GID"
1455              "UNIX-IOCTL" "UNIX-ISATTY" "UNIX-LINK" "UNIX-LISTEN" "UNIX-LSEEK"
1456              "UNIX-LSTAT" "UNIX-MKDIR" "UNIX-OPEN" "UNIX-PATHNAME" "UNIX-PID"
1457              "UNIX-PIPE" "UNIX-READ" "UNIX-READLINK" "UNIX-RECV" "UNIX-RENAME"
1458              "UNIX-RMDIR" "UNIX-SELECT" "UNIX-SEND" "UNIX-SETPGRP"
1459              "UNIX-SETREGID" "UNIX-SETREUID" "UNIX-SOCKET" "UNIX-STAT"
1460              "UNIX-SYMLINK" "UNIX-SYNC"
1461              "UNIX-TIMES" "UNIX-TRUNCATE" "UNIX-TTYNAME"
1462              "UNIX-UID" "UNIX-UNLINK" "UNIX-UTIMES" "UNIX-WRITE" "WINSIZE"
1463              "WRITEGRP" "WRITEOTH" "WRITEOWN" "WS-COL" "WS-ROW" "WS-XPIXEL"
1464              "WS-YPIXEL" "W_OK" "X_OK" "SIGSYS" "TCSETPGRP" "FD-ZERO"
1465              "SIGEMSG" "SIGQUIT" "SIGCHLD" "SIGSEGV" "FD-CLR" "SIGUSR2"
1466              "EALREADY" "SIGPIPE" "EACCES" "CHECK" "SIGXCPU" "EOPNOTSUPP"
1467              "SIGFPE" "SIGHUP" "ENOTSOCK" "OPEN-DIR" "SIGMASK" "EINTR"
1468              "SIGCONT" "UNIX-RESOLVE-LINKS" "SIGKILL" "EMSGSIZE" "ERANGE"
1469              "EPROTOTYPE" "UNIX-SIGNAL-NUMBER" "EPFNOSUPPORT" "SIGILL"
1470              "EDOM" "UNIX-SIGPAUSE" "EDQUOT" "FD-SETSIZE" "SIGTSTP"
1471              "EAFNOSUPPORT" "TCGETPGRP" "EMFILE" "ECONNRESET"
1472              "EADDRNOTAVAIL" "SIGALRM" "ENETDOWN" "EVICEOP"
1473              "UNIX-FAST-GETRUSAGE" "EPERM" "SIGINT" "EXDEV" "EDEADLK"
1474              "ENOSPC" "ECONNREFUSED" "SIGWINCH" "ENOPROTOOPT" "ESRCH"
1475              "EUSERS" "SIGVTALRM" "ENOTCONN" "ESUCCESS" "EPIPE"
1476              "UNIX-SIMPLIFY-PATHNAME" "EISCONN" "FD-ISSET" "SIGMSG"
1477              "ESHUTDOWN" "EBUSY" "SIGTERM" "ENAMETOOLONG" "EMLINK"
1478              "EADDRINUSE" "SIGBUS" "ERESTART" "TTY-PROCESS-GROUP"
1479              "UNIX-SIGNAL-NAME" "ETIMEDOUT" "ECHILD" "EFBIG" "SIGTRAP"
1480              "UNIX-KILLPG" "ENOTBLK" "SIGIOT" "SIGUSR1" "ECONNABORTED"
1481              "EHOSTUNREACH" "EBADF" "EINVAL" "FD-SET" "CLOSE-DIR" "EISDIR"
1482              "SIGTTIN" "UNIX-KILL" "ENOTDIR" "EHOSTDOWN" "E2BIG" "ESPIPE"
1483              "UNIX-FAST-SELECT" "ENXIO" "ENOTTY" "ELOOP" "LTCHARS"
1484              "UNIX-SIGNAL-DESCRIPTION" "SIGXFSZ" "EINPROGRESS" "ENOENT"
1485              "EPROTONOSUPPORT" "UNIX-SIGBLOCK" "SIGIO" "ENOMEM" "SIGEMT"
1486              "EFAULT" "ENODEV" "EIO" "EVICEERR" "ETXTBSY" "EWOULDBLOCK"
1487              "EAGAIN" "EDESTADDRREQ" "ENOEXEC" "ENETUNREACH" "ENOTEMPTY"
1488              "READ-DIR" "UNIX-MAYBE-PREPEND-CURRENT-DIRECTORY" "ENFILE"
1489              "SIGTTOU" "EEXIST" "SIGPROF" "SIGSTOP" "ENETRESET" "SIGURG"
1490              "ENOBUFS" "EPROCLIM" "EROFS" "ETOOMANYREFS" "UNIX-FILE-KIND"
1491              "ELOCAL" "UNIX-SIGSETMASK" "EREMOTE" "ESOCKTNOSUPPORT"
1492              "TIOCSIGSEND" "SIGWAITING"
1493              "C-IFLAG" "UNIX-TCGETATTR" "C-LFLAG" "C-OFLAG"
1494              "C-CFLAG" "TCSAFLUSH" "C-CC" "SIOCSPGRP" "TERMIOS"
1495              "UNIX-TCSETATTR" "O_NDELAY" "O_NOCTTY"
1496              "O_NONBLOCK" "TCSANOW" "TCSADRAIN" "TCIFLUSH" "TCOFLUSH"
1497              "TCIOFLUSH" "UNIX-CFGETOSPEED" "UNIX-CFSETOSPEED"
1498              "UNIX-CFGETISPEED" "UNIX-CFSETISPEED"
1499              "TTY-IGNBRK" "TTY-BRKINT" "TTY-IGNPAR" "TTY-PARMRK"
1500              "TTY-INPCK" "TTY-ISTRIP" "TTY-INLCR" "TTY-IGNCR" "TTY-ICRNL"
1501              "TTY-IUCLC" "TTY-IXON" "TTY-IXANY" "TTY-IXOFF" "TTY-IENQAK"
1502              "TTY-IMAXBEL" "TTY-OPOST" "TTY-OLCUC" "TTY-ONLCR" "TTY-OCRNL"
1503              "TTY-ONOCR" "TTY-ONLRET" "TTY-OFILL" "TTY-OFDEL" "TTY-ISIG"
1504              "TTY-ICANON" "TTY-XCASE" "TTY-ECHO" "TTY-ECHOE" "TTY-ECHOK"
1505              "TTY-ECHONL" "TTY-NOFLSH" "TTY-IEXTEN" "TTY-TOSTOP" "TTY-ECHOCTL"
1506              "TTY-ECHOPRT" "TTY-ECHOKE"  "TTY-DEFECHO" "TTY-FLUSHO"
1507              "TTY-PENDIN" "TTY-CSTOPB" "TTY-CREAD" "TTY-PARENB" "TTY-PARODD"
1508              "TTY-HUPCL" "TTY-CLOCAL" "RCV1EN" "XMT1EN" "TTY-LOBLK" "VINTR"
1509              "VQUIT" "VERASE" "VKILL" "VEOF" "VEOL" "VEOL2" "TTY-CBAUD"
1510              "TTY-CSIZE" "TTY-CS5" "TTY-CS6" "TTY-CS7" "TTY-CS8" "VMIN" "VTIME"
1511              "VSUSP" "VSTART" "VSTOP" "VDSUSP" "UNIX-TCSENDBREAK"
1512              "UNIX-TCDRAIN" "UNIX-TCFLUSH" "UNIX-TCFLOW"
1513              #!+(or svr4 bsd linux) "O_NDELAY"
1514              #!+(or svr4 linux) ("EADDRINUSE" "EADDRNOTAVAIL" "EADV"
1515                                  "EAFNOSUPPORT" "EALREADY" "EBADE" "EBADFD"
1516                                  "EBADMSG" "EBADR" "EBADRQC"
1517                                  "EBADSLT" "EBFONT" #!+svr4 "ECANCELED"
1518                                  "ECHRNG" "ECOMM" "ECONNABORTED"
1519                                  "ECONNREFUSED" "ECONNRESET" "EDEADLK"
1520                                  "EDEADLOCK" "EDESTADDRREQ" #!+linux "EDOTDOT"
1521                                  #!+linux "EDQUOT" "EHOSTDOWN" "EHOSTUNREACH"
1522                                  "EIDRM" "EILSEQ" "EINPROGRESS"
1523                                  "EISCONN" #!+linux "EISNAM" "EL2HLT"
1524                                  "EL2NSYNC" "EL3HLT" "EL3RST" "ELIBACC"
1525                                  "ELIBBAD" "ELIBEXEC" "ELIBMAX" "ELIBSCN"
1526                                  "ELNRNG" "ELOOP" "EMSGSIZE" "EMULTIHOP"
1527                                  "ENAMETOOLONG" #!+linux "ENAVAIL"
1528                                  "ENETDOWN" "ENETRESET" "ENETUNREACH" "ENOANO"
1529                                  "ENOBUFS" "ENOCSI" "ENODATA" "ENOLCK"
1530                                  "ENOLINK" "ENOMSG" "ENONET" "ENOPKG"
1531                                  "ENOPROTOOPT" "ENOSR" "ENOSTR" "ENOSYS"
1532                                  "ENOTCONN" "ENOTEMPTY" #!+linux "ENOTNAM"
1533                                  "ENOTSOCK" #!+svr4 "ENOTSUP" "ENOTUNIQ"
1534                                  "EOPNOTSUPP" "EOVERFLOW" "EPFNOSUPPORT"
1535                                  "EPROTO" "EPROTONOSUPPORT" "EPROTOTYPE"
1536                                  "EREMCHG" "EREMOTE" #!+linux "EREMOTEIO"
1537                                  "ERESTART" "ESHUTDOWN" "ESOCKTNOSUPPORT"
1538                                  "ESRMNT" "ESTALE" "ESTRPIPE" "ETIME"
1539                                  "ETIMEDOUT" "ETOOMANYREFS" #!+linux "EUCLEAN"
1540                                  "EUNATCH" "EUSERS" "EWOULDBLOCK" "EXFULL")))
1541
1542  #s(sb-cold:package-data
1543     :name "SB!VM"
1544     :doc
1545 "internal: the default place to hide information about the hardware and data
1546 structure representations"
1547     :use ("CL" "SB!ALIEN" "SB!ALIEN-INTERNALS" "SB!ASSEM"
1548           "SB!C" "SB!C-CALL" "SB!EXT" "SB!INT" "SB!KERNEL" "SB!SYS" "SB!UNIX")
1549     :export ("*ASSEMBLY-UNIT-LENGTH*" "*PRIMITIVE-OBJECTS*"
1550              "AFTER-BREAKPOINT-TRAP"
1551              "ANY-REG-SC-NUMBER" "ARRAY-DATA-SLOT" "ARRAY-DIMENSIONS-OFFSET"
1552              "ARRAY-DISPLACED-P-SLOT" "ARRAY-DISPLACEMENT-SLOT"
1553              "ARRAY-ELEMENTS-SLOT" "ARRAY-FILL-POINTER-P-SLOT"
1554              "ARRAY-FILL-POINTER-SLOT" "ATOMIC-FLAG" "BASE-CHAR-REG-SC-NUMBER"
1555              "BASE-CHAR-STACK-SC-NUMBER" "BASE-CHAR-TYPE"
1556              "BIGNUM-DIGITS-OFFSET" "BIGNUM-TYPE" "BINDING-SIZE"
1557              "BINDING-SYMBOL-SLOT" "BINDING-VALUE-SLOT" "BREAKPOINT-TRAP"
1558              "BYTE-CODE-CLOSURE-TYPE" "BYTE-CODE-FUNCTION-TYPE"
1559              "BYTE-BITS" "BYTE-REG-SC-NUMBER"
1560              "CATCH-BLOCK-CURRENT-CODE-SLOT"
1561              "CATCH-BLOCK-CURRENT-CONT-SLOT" "CATCH-BLOCK-CURRENT-UWP-SLOT"
1562              "CATCH-BLOCK-ENTRY-PC-SLOT" "CATCH-BLOCK-PREVIOUS-CATCH-SLOT"
1563              "CATCH-BLOCK-SC-NUMBER" "CATCH-BLOCK-SIZE" "CATCH-BLOCK-SIZE-SLOT"
1564              "CATCH-BLOCK-TAG-SLOT" "CERROR-TRAP"
1565              "CLOSURE-FUNCTION-HEADER-TYPE" "CLOSURE-FUNCTION-SLOT"
1566              "CLOSURE-HEADER-TYPE" "CLOSURE-INFO-OFFSET"
1567              "CODE-CODE-SIZE-SLOT" "CODE-CONSTANTS-OFFSET"
1568              "CODE-DEBUG-INFO-SLOT" "CODE-ENTRY-POINTS-SLOT" "CODE-HEADER-TYPE"
1569              "CODE-TRACE-TABLE-OFFSET-SLOT" "COMPLEX-ARRAY-TYPE"
1570              "COMPLEX-BIT-VECTOR-TYPE" "COMPLEX-DOUBLE-FLOAT-FILLER-SLOT"
1571              "COMPLEX-DOUBLE-FLOAT-IMAG-SLOT" "COMPLEX-DOUBLE-FLOAT-REAL-SLOT"
1572              "COMPLEX-DOUBLE-FLOAT-SIZE" "COMPLEX-DOUBLE-FLOAT-TYPE"
1573              "COMPLEX-DOUBLE-REG-SC-NUMBER" "COMPLEX-DOUBLE-STACK-SC-NUMBER"
1574              "COMPLEX-IMAG-SLOT" "COMPLEX-REAL-SLOT"
1575              "COMPLEX-LONG-FLOAT-IMAG-SLOT" "COMPLEX-LONG-FLOAT-REAL-SLOT"
1576              "COMPLEX-LONG-FLOAT-SIZE" "COMPLEX-LONG-FLOAT-TYPE"
1577              "COMPLEX-LONG-REG-SC-NUMBER" "COMPLEX-LONG-STACK-SC-NUMBER"
1578              "COMPLEX-SINGLE-FLOAT-IMAG-SLOT" "COMPLEX-SINGLE-FLOAT-REAL-SLOT"
1579              "COMPLEX-SINGLE-FLOAT-SIZE" "COMPLEX-SINGLE-FLOAT-TYPE"
1580              "COMPLEX-SINGLE-REG-SC-NUMBER" "COMPLEX-SINGLE-STACK-SC-NUMBER"
1581              "COMPLEX-SIZE" "COMPLEX-STRING-TYPE" "COMPLEX-TYPE"
1582              "COMPLEX-VECTOR-TYPE" "CONS-CAR-SLOT" "CONS-CDR-SLOT"
1583              "CONS-SIZE" "CONSTANT-SC-NUMBER"
1584              "CONTEXT-FLOATING-POINT-MODES" "CONTEXT-FLOAT-REGISTER"
1585              "CONTEXT-PC" "CONTEXT-REGISTER"
1586              "CONTROL-STACK-SC-NUMBER" "COUNT-NO-OPS"
1587              "CURRENT-DYNAMIC-SPACE-START"
1588              "CURRENT-FLOAT-TRAP" "DEFINE-FOR-EACH-PRIMITIVE-OBJECT"
1589              "DESCRIPTOR-REG-SC-NUMBER" "DESCRIPTOR-VS-NON-DESCRIPTOR-STORAGE"
1590              "DOUBLE-FLOAT-EXPONENT-BYTE" "DOUBLE-FLOAT-BIAS"
1591              "DOUBLE-FLOAT-DIGITS" "DOUBLE-FLOAT-EXPONENT-BYTE"
1592              "DOUBLE-FLOAT-FILLER-SLOT" "DOUBLE-FLOAT-HIDDEN-BIT"
1593              "DOUBLE-FLOAT-NORMAL-EXPONENT-MAX"
1594              "DOUBLE-FLOAT-NORMAL-EXPONENT-MIN" "DOUBLE-FLOAT-SIGNIFICAND-BYTE"
1595              "DOUBLE-FLOAT-SIZE" "DOUBLE-FLOAT-TRAPPING-NAN-BIT"
1596              "DOUBLE-FLOAT-TYPE" "DOUBLE-FLOAT-VALUE-SLOT"
1597              "DOUBLE-INT-CARG-REG-SC-NUMBER" "DOUBLE-REG-SC-NUMBER"
1598              "DOUBLE-STACK-SC-NUMBER"
1599              "ERROR-TRAP" "EVEN-FIXNUM-TYPE"
1600              "EXPORTED-STATIC-SYMBOLS" "EXTERN-ALIEN-NAME"
1601              "FDEFN-FUNCTION-SLOT" "FDEFN-NAME-SLOT" "FDEFN-RAW-ADDR-SLOT"
1602              "FDEFN-SIZE" "FDEFN-TYPE" "FIND-HOLES" "FIXNUMIZE"
1603              "FIXUP-CODE-OBJECT" "FLOAT-DENORMAL-TRAP-BIT"
1604              "FLOAT-DIVIDE-BY-ZERO-TRAP-BIT"
1605              "FLOAT-IMPRECISE-TRAP-BIT" "FLOAT-INVALID-TRAP-BIT"
1606              "FLOAT-OVERFLOW-TRAP-BIT" "FLOAT-SIGN-SHIFT"
1607              "FLOAT-UNDERFLOW-TRAP-BIT" "FLOATING-POINT-MODES"
1608              "FORWARDING-POINTER-TYPE"
1609              "FP-CONSTANT-SC-NUMBER"
1610              "FP-DOUBLE-ZERO-SC-NUMBER" "FP-SINGLE-ZERO-SC-NUMBER"
1611              "FUNCALLABLE-INSTANCE-FUNCTION-SLOT"
1612              "FUNCALLABLE-INSTANCE-HEADER-TYPE"
1613              "FUNCALLABLE-INSTANCE-INFO-OFFSET"
1614              "FUNCTION-ARGLIST-SLOT" "FUNCTION-CODE-OFFSET"
1615              "FUNCTION-END-BREAKPOINT-TRAP" "FUNCTION-HEADER-ARGLIST-SLOT"
1616              "FUNCTION-HEADER-CODE-OFFSET" "FUNCTION-HEADER-NAME-SLOT"
1617              "FUNCTION-HEADER-NEXT-SLOT" "FUNCTION-HEADER-SELF-SLOT"
1618              "FUNCTION-HEADER-TYPE" "FUNCTION-HEADER-TYPE-SLOT"
1619              "FUNCTION-NAME-SLOT" "FUNCTION-NEXT-SLOT" "FUNCTION-POINTER-TYPE"
1620              "FUNCTION-SELF-SLOT" "FUNCTION-TYPE-SLOT"
1621              "FUNCALLABLE-INSTANCE-LAYOUT-SLOT"
1622              "FUNCALLABLE-INSTANCE-LEXENV-SLOT"
1623              "GENESIS" "HALT-TRAP" "IGNORE-ME-SC-NUMBER"
1624              "IMMEDIATE-BASE-CHAR-SC-NUMBER" "IMMEDIATE-SAP-SC-NUMBER"
1625              "IMMEDIATE-SC-NUMBER" "*INITIAL-DYNAMIC-SPACE-FREE-POINTER*"
1626              "INSTANCE-HEADER-TYPE" "INSTANCE-POINTER-TYPE"
1627              "INSTANCE-SLOTS-OFFSET" "INSTANCE-USAGE"
1628              "INTERIOR-REG-SC-NUMBER" "INTERNAL-ERROR-ARGUMENTS"
1629              "INTERRUPTED-FLAG" "LIST-ALLOCATED-OBJECTS" "LIST-POINTER-TYPE"
1630              "LONG-FLOAT-BIAS" "LONG-FLOAT-DIGITS" "LONG-FLOAT-EXPONENT-BYTE"
1631              "LONG-FLOAT-HIDDEN-BIT" "LONG-FLOAT-NORMAL-EXPONENT-MAX"
1632              "LONG-FLOAT-NORMAL-EXPONENT-MIN" "LONG-FLOAT-SIGNIFICAND-BYTE"
1633              "LONG-FLOAT-SIZE" "LONG-FLOAT-TRAPPING-NAN-BIT" "LONG-FLOAT-TYPE"
1634              "LONG-FLOAT-VALUE-SLOT" "LONG-REG-SC-NUMBER"
1635              "LONG-STACK-SC-NUMBER"
1636              "LOWTAG-BITS" "LOWTAG-LIMIT" "LOWTAG-MASK"
1637              "MEMORY-USAGE" "MOST-POSITIVE-COST"
1638              "NEGATIVE-IMMEDIATE-SC-NUMBER" "NON-DESCRIPTOR-REG-SC-NUMBER"
1639              "NULL-SC-NUMBER" "OBJECT-NOT-LIST-TRAP" "OBJECT-NOT-INSTANCE-TRAP"
1640              "ODD-FIXNUM-TYPE" "OFFSET-STATIC-SYMBOL" "OTHER-IMMEDIATE-0-TYPE"
1641              "OTHER-IMMEDIATE-1-TYPE" "OTHER-POINTER-TYPE"
1642              "PAD-DATA-BLOCK" "PENDING-INTERRUPT-TRAP"
1643              "PRIMITIVE-OBJECT" "PRIMITIVE-OBJECT-HEADER"
1644              "PRIMITIVE-OBJECT-LOWTAG" "PRIMITIVE-OBJECT-NAME"
1645              "PRIMITIVE-OBJECT-OPTIONS" "PRIMITIVE-OBJECT-P"
1646              "PRIMITIVE-OBJECT-SIZE" "PRIMITIVE-OBJECT-SLOTS"
1647              "PRIMITIVE-OBJECT-VARIABLE-LENGTH" "PRINT-ALLOCATED-OBJECTS"
1648              "RANDOM-IMMEDIATE-SC-NUMBER" "RATIO-DENOMINATOR-SLOT"
1649              "RATIO-NUMERATOR-SLOT" "RATIO-SIZE" "RATIO-TYPE"
1650              "*READ-ONLY-SPACE-FREE-POINTER*"
1651              "REGISTER-SAVE-PENALTY" "RETURN-PC-HEADER-TYPE"
1652              "RETURN-PC-RETURN-POINT-OFFSET" "SANCTIFY-FOR-EXECUTION"
1653              "SAP-POINTER-SLOT" "SAP-REG-SC-NUMBER" "SAP-SIZE"
1654              "SAP-STACK-SC-NUMBER" "SAP-TYPE"
1655              "SIGFPE-HANDLER" "SIGNED-REG-SC-NUMBER" "SIGNED-STACK-SC-NUMBER"
1656              "SIMPLE-ARRAY-COMPLEX-DOUBLE-FLOAT-TYPE"
1657              "SIMPLE-ARRAY-COMPLEX-LONG-FLOAT-TYPE"
1658              "SIMPLE-ARRAY-COMPLEX-SINGLE-FLOAT-TYPE"
1659              "SIMPLE-ARRAY-DOUBLE-FLOAT-TYPE"
1660              "SIMPLE-ARRAY-LONG-FLOAT-TYPE"
1661              "SIMPLE-ARRAY-SINGLE-FLOAT-TYPE"
1662              "SIMPLE-ARRAY-TYPE" "SIMPLE-ARRAY-UNSIGNED-BYTE-16-TYPE"
1663              "SIMPLE-ARRAY-UNSIGNED-BYTE-2-TYPE"
1664              "SIMPLE-ARRAY-UNSIGNED-BYTE-32-TYPE"
1665              "SIMPLE-ARRAY-UNSIGNED-BYTE-4-TYPE"
1666              "SIMPLE-ARRAY-UNSIGNED-BYTE-8-TYPE"
1667              "SIMPLE-ARRAY-SIGNED-BYTE-16-TYPE"
1668              "SIMPLE-ARRAY-SIGNED-BYTE-30-TYPE"
1669              "SIMPLE-ARRAY-SIGNED-BYTE-32-TYPE"
1670              "SIMPLE-ARRAY-SIGNED-BYTE-8-TYPE"
1671              "SIMPLE-BIT-VECTOR-TYPE"
1672              "SIMPLE-STRING-TYPE" "SIMPLE-VECTOR-TYPE" "SINGLE-FLOAT-BIAS"
1673              "SINGLE-FLOAT-DIGITS" "SINGLE-FLOAT-EXPONENT-BYTE"
1674              "SINGLE-FLOAT-HIDDEN-BIT" "SINGLE-FLOAT-NORMAL-EXPONENT-MAX"
1675              "SINGLE-FLOAT-NORMAL-EXPONENT-MIN" "SINGLE-FLOAT-SIGNIFICAND-BYTE"
1676              "SINGLE-FLOAT-SIZE" "SINGLE-FLOAT-TRAPPING-NAN-BIT"
1677              "SINGLE-FLOAT-TYPE" "SINGLE-FLOAT-VALUE-SLOT"
1678              "SINGLE-INT-CARG-REG-SC-NUMBER"
1679              "SINGLE-REG-SC-NUMBER" "SINGLE-STACK-SC-NUMBER"
1680              "SINGLE-STEP-BREAKPOINT-TRAP"
1681              "SINGLE-VALUE-RETURN-BYTE-OFFSET" "SLOT-DOCS"
1682              "SLOT-LENGTH" "SLOT-NAME" "SLOT-OFFSET" "SLOT-OPTIONS"
1683              "SLOT-REST-P" "*STATIC-FUNCTIONS*" "STATIC-FUNCTION-OFFSET"
1684              "STATIC-SYMBOL-OFFSET" "STATIC-SYMBOL-P"
1685              "*STATIC-SPACE-FREE-POINTER*" "*STATIC-SYMBOLS*"
1686              "STRUCTURE-USAGE" "SYMBOL-FUNCTION-SLOT"
1687              "SYMBOL-HASH-SLOT" "SYMBOL-HEADER-TYPE" "SYMBOL-NAME-SLOT"
1688              "SYMBOL-PACKAGE-SLOT" "SYMBOL-PLIST-SLOT"
1689              "SYMBOL-RAW-FUNCTION-ADDR-SLOT" "SYMBOL-SETF-FUNCTION-SLOT"
1690              "SYMBOL-SIZE" "SYMBOL-UNUSED-SLOT" "SYMBOL-VALUE-SLOT"
1691              "BINDING-STACK-START" "BINDING-STACK-END" 
1692              "CONTROL-STACK-START" "CONTROL-STACK-END"
1693              "DYNAMIC-SPACE-START" "DYNAMIC-SPACE-END"
1694              "READ-ONLY-SPACE-START" "READ-ONLY-SPACE-END"
1695              "TARGET-BYTE-ORDER"
1696              "TARGET-FASL-CODE-FORMAT" "TARGET-FASL-FILE-TYPE"
1697              "TARGET-HEAP-ADDRESS-SPACE" "*TARGET-MOST-NEGATIVE-FIXNUM*"
1698              "*TARGET-MOST-POSITIVE-FIXNUM*" 
1699              "STATIC-SPACE-START" "STATIC-SPACE-END"
1700              "TRACE-TABLE-CALL-SITE"
1701              "TRACE-TABLE-FUNCTION-EPILOGUE" "TRACE-TABLE-FUNCTION-PROLOGUE"
1702              "TRACE-TABLE-NORMAL" "TYPE-BITS" "TYPE-MASK" "UNBOUND-MARKER-TYPE"
1703              "UNSIGNED-IMMEDIATE-SC-NUMBER"
1704              "UNSIGNED-REG-SC-NUMBER" "UNSIGNED-STACK-SC-NUMBER"
1705              "UNWIND-BLOCK-CURRENT-CODE-SLOT" "UNWIND-BLOCK-CURRENT-CONT-SLOT"
1706              "UNWIND-BLOCK-CURRENT-UWP-SLOT" "UNWIND-BLOCK-ENTRY-PC-SLOT"
1707              "UNWIND-BLOCK-SIZE" "VALUE-CELL-HEADER-TYPE" "VALUE-CELL-SIZE"
1708              "VALUE-CELL-VALUE-SLOT" "VECTOR-DATA-OFFSET" "VECTOR-LENGTH-SLOT"
1709              "VECTOR-MUST-REHASH-SUBTYPE" "VECTOR-NORMAL-SUBTYPE"
1710              "VECTOR-VALID-HASHING-SUBTYPE"
1711              "WEAK-POINTER-BROKEN-SLOT" "WEAK-POINTER-NEXT-SLOT"
1712              "WEAK-POINTER-SIZE" "WEAK-POINTER-TYPE" "WEAK-POINTER-VALUE-SLOT"
1713              "WORD" "WORD-BITS" "WORD-BYTES" "WORD-REG-SC-NUMBER" "WORD-SHIFT"
1714              "ZERO-SC-NUMBER"))
1715
1716  #s(sb-cold:package-data
1717     :name "SB!WALKER"
1718     :doc "internal: a code walker used by PCL"
1719     :use ("CL")
1720     :export ("DEFINE-WALKER-TEMPLATE" "WALK-FORM"
1721              "*WALK-FORM-EXPAND-MACROS-P*" "NESTED-WALK-FORM"
1722              "VARIABLE-LEXICAL-P" "VARIABLE-SPECIAL-P"
1723              "VARIABLE-GLOBALLY-SPECIAL-P"
1724              "*VARIABLE-DECLARATIONS*" "VARIABLE-DECLARATION"
1725              "MACROEXPAND-ALL")))