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