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