lazy *STACK-TOP-HINT*s
[sbcl.git] / package-data-list.lisp-expr
1 ;;;; -*- Lisp -*-
2
3 ;;;; the specifications of target packages, except for a few things
4 ;;;; which are handled elsewhere by other mechanisms:
5 ;;;;   * any SHADOWing and nickname hackery;
6 ;;;;   * the standard, non-SBCL-specific packages COMMON-LISP,
7 ;;;;     COMMON-LISP-USER, and KEYWORD.
8 ;;;;
9 ;;;; The packages are named SB!FOO here and elsewhere in
10 ;;;; cross-compilation, in order to avoid collision with possible
11 ;;;; corresponding SB-FOO packages in the cross-compilation host.
12 ;;;; They're renamed to SB-FOO later, after we've departed from the xc
13 ;;;; mothership and the danger of namespace collision is past.
14
15 ;;;; This software is part of the SBCL system. See the README file for
16 ;;;; more information.
17 ;;;;
18 ;;;; This software is derived from the CMU CL system, which was
19 ;;;; written at Carnegie Mellon University and released into the
20 ;;;; public domain. The software is in the public domain and is
21 ;;;; provided with absolutely no warranty. See the COPYING and CREDITS
22 ;;;; files for more information.
23
24 ;;;; KLUDGE: To make it easier for emacs to autoindent this file nicely
25 ;;;; (which prevents spurious conflicts in CVS) each longish list should
26 ;;;; have only one string on the first line. Silly, but there you go.
27
28 (#s(sb-cold:package-data
29     :name "SB!ALIEN"
30     :doc "public: the ALIEN foreign function interface (If you're
31 porting CMU CL code, note that this package corresponds roughly to a union
32 of the packages ALIEN and C-CALL at the time of the SBCL fork. SB-C-CALL
33 is a deprecated nickname to help ease the transition from older versions
34 of SBCL which maintained the CMU-CL-style split into two packages.)"
35     :use ("CL" "SB!EXT" "SB!INT" "SB!SYS" "SB!ALIEN-INTERNALS")
36     :reexport ("ARRAY"
37                "BOOLEAN" "CHAR" "DOUBLE-FLOAT"
38                "FLOAT" "FUNCTION" "INTEGER" "LONG-FLOAT"
39                "SINGLE-FLOAT"
40                ;; FIXME: Do we really want to reexport
41                ;; SYSTEM-AREA-POINTER here? Why?
42                "SYSTEM-AREA-POINTER"
43                "UNION"  "VALUES" "*")
44     :export ("ADDR"
45              "ALIEN"
46              "ALIEN-FUNCALL" "ALIEN-SAP" "ALIEN-SIZE"
47              "CAST" "C-STRING"
48              "DEFINE-ALIEN-ROUTINE" "DEFINE-ALIEN-TYPE" "DEFINE-ALIEN-VARIABLE"
49              "DEREF" "DOUBLE"
50              "ENUM" "EXTERN-ALIEN"
51              "FREE-ALIEN"
52              "GET-ERRNO"
53              "INT"
54              "LOAD-1-FOREIGN" "LOAD-FOREIGN" "LOAD-SHARED-OBJECT" "LONG" "LONG-LONG"
55              "MAKE-ALIEN"
56              "MAKE-ALIEN-STRING"
57              "NULL-ALIEN"
58              "OFF-T"
59              "SAP-ALIEN" "SHORT" "SIGNED"
60              "SIZE-T"
61              "SLOT" "STRUCT"
62              "UNDEFINED-ALIEN-ERROR"
63              "UNLOAD-SHARED-OBJECT"
64              "UNSIGNED"
65              "UNSIGNED-CHAR" "UNSIGNED-INT" "UNSIGNED-LONG" "UNSIGNED-LONG-LONG" "UNSIGNED-SHORT"
66              "UTF8-STRING"
67              "VOID"
68              "WITH-ALIEN"))
69
70    #s(sb-cold:package-data
71       :name "SB!ALIEN-INTERNALS"
72       :doc "private: stuff for implementing ALIENs and friends"
73       :use ("CL")
74       :export ("%CAST"
75                "%DEREF-ADDR" "%HEAP-ALIEN" "%HEAP-ALIEN-ADDR"
76                "%LOCAL-ALIEN-ADDR" "%LOCAL-ALIEN-FORCED-TO-MEMORY-P" "%SAP-ALIEN"
77                "%SET-DEREF" "%SET-HEAP-ALIEN" "%SET-LOCAL-ALIEN" "%SET-SLOT"
78                "%SLOT-ADDR" "*VALUES-TYPE-OKAY*" "ALIEN-ARRAY-TYPE"
79                "ALIEN-ARRAY-TYPE-DIMENSIONS" "ALIEN-ARRAY-TYPE-ELEMENT-TYPE"
80                "ALIEN-ARRAY-TYPE-P" "ALIEN-BOOLEAN-TYPE" "ALIEN-BOOLEAN-TYPE-P"
81                "ALIEN-CALLBACK"
82                "ALIEN-CALLBACK-ACCESSOR-FORM"
83                "ALIEN-CALLBACK-ASSEMBLER-WRAPPER"
84                "ALIEN-DOUBLE-FLOAT-TYPE" "ALIEN-DOUBLE-FLOAT-TYPE-P"
85                "ALIEN-ENUM-TYPE" "ALIEN-ENUM-TYPE-P" "ALIEN-FLOAT-TYPE"
86                "ALIEN-FLOAT-TYPE-P" "ALIEN-FUN-TYPE"
87                "ALIEN-FUN-TYPE-ARG-TYPES" "ALIEN-FUN-TYPE-P"
88                "ALIEN-FUN-TYPE-RESULT-TYPE" "ALIEN-INTEGER-TYPE"
89                "ALIEN-INTEGER-TYPE-P" "ALIEN-INTEGER-TYPE-SIGNED"
90                "ALIEN-LONG-FLOAT-TYPE" "ALIEN-LONG-FLOAT-TYPE-P"
91                "ALIEN-POINTER-TYPE" "ALIEN-POINTER-TYPE-P"
92                "ALIEN-POINTER-TYPE-TO" "ALIEN-RECORD-FIELD"
93                "ALIEN-RECORD-FIELD-NAME" "ALIEN-RECORD-FIELD-OFFSET"
94                "ALIEN-RECORD-FIELD-P" "ALIEN-RECORD-FIELD-TYPE"
95                "ALIEN-RECORD-TYPE" "ALIEN-RECORD-TYPE-FIELDS"
96                "ALIEN-RECORD-TYPE-P" "ALIEN-SINGLE-FLOAT-TYPE"
97                "ALIEN-SINGLE-FLOAT-TYPE-P" "ALIEN-SUBTYPE-P" "ALIEN-TYPE"
98                "ALIEN-TYPE-=" "ALIEN-TYPE-ALIGNMENT" "ALIEN-TYPE-BITS"
99                "ALIEN-TYPE-P" "ALIEN-TYPEP"
100                "ALIEN-VALUE"
101                "ALIEN-VALUE-TYPE"
102                "ALIEN-VALUE-TYPEP"
103                "ALIEN-VALUE-SAP" "ALIEN-VALUE-P"
104                "ALIEN-VALUES-TYPE" "ALIEN-VALUES-TYPE-P"
105                "ALIEN-VALUES-TYPE-VALUES" "ALIGN-OFFSET" "ALIEN-VOID-TYPE-P"
106                "COMPUTE-ALIEN-REP-TYPE" "COMPUTE-DEPORT-ALLOC-LAMBDA"
107                "COMPUTE-DEPORT-LAMBDA" "COMPUTE-DEPOSIT-LAMBDA"
108                "COMPUTE-EXTRACT-LAMBDA" "COMPUTE-LISP-REP-TYPE"
109                "COMPUTE-NATURALIZE-LAMBDA" "DEFINE-ALIEN-TYPE-CLASS"
110                "DEFINE-ALIEN-TYPE-METHOD" "DEFINE-ALIEN-TYPE-TRANSLATOR"
111                "DEPORT" "DEPORT-ALLOC"
112                "DEPOSIT-ALIEN-VALUE" "DISPOSE-LOCAL-ALIEN"
113                "*ENTER-ALIEN-CALLBACK*" "ENTER-ALIEN-CALLBACK"
114                "EXTRACT-ALIEN-VALUE"
115                "HEAP-ALIEN-INFO" "HEAP-ALIEN-INFO-P" "HEAP-ALIEN-INFO-SAP-FORM"
116                "HEAP-ALIEN-INFO-TYPE" "INVOKE-ALIEN-TYPE-METHOD" "LOCAL-ALIEN"
117                "LOCAL-ALIEN-INFO" "LOCAL-ALIEN-INFO-FORCE-TO-MEMORY-P"
118                "LOCAL-ALIEN-INFO-P" "LOCAL-ALIEN-INFO-TYPE"
119                "MAKE-ALIEN-FUN-TYPE" "MAKE-ALIEN-POINTER-TYPE"
120                "MAKE-ALIEN-VALUE" "MAYBE-WITH-PINNED-OBJECTS"
121                "MAKE-LOCAL-ALIEN" "NATURALIZE"
122                "NOTE-LOCAL-ALIEN-TYPE"
123                "PARSE-ALIEN-TYPE" "UNPARSE-ALIEN-TYPE"))
124
125    #s(sb-cold:package-data
126       :name "SB!ASSEM"
127       :doc "private: the assembler, used by the compiler"
128       :use ("CL" "SB!EXT" "SB!INT")
129       :export ("ASSEMBLY-UNIT"
130
131                "*ASSEM-SCHEDULER-P*"
132                "*ASSEM-INSTRUCTIONS*"
133                "*ASSEM-MAX-LOCATIONS*"
134
135                "EMIT-ALIGNMENT" "EMIT-BYTE" "EMIT-SKIP" "EMIT-BACK-PATCH"
136                "EMIT-CHOOSER" "DEFINE-BITFIELD-EMITTER"
137                "DEFINE-INSTRUCTION" "DEFINE-INSTRUCTION-MACRO"
138                "DEF-ASSEMBLER-PARAMS" "EMIT-POSTIT"
139
140                "MAKE-SEGMENT" "SEGMENT-TYPE" "ASSEMBLE"
141                "INST" "LABEL" "LABEL-P" "GEN-LABEL"
142                "EMIT-LABEL" "LABEL-POSITION" "APPEND-SEGMENT" "FINALIZE-SEGMENT"
143                "ON-SEGMENT-CONTENTS-VECTORLY" "WRITE-SEGMENT-CONTENTS"
144                "READS" "WRITES" "SEGMENT"
145                "WITHOUT-SCHEDULING"
146                "VARIABLE-LENGTH"
147                "SEGMENT-COLLECT-DYNAMIC-STATISTICS"
148
149                ;; FIXME: These are in the SB-ASSEM package now, but
150                ;; (left over from CMU CL) are defined in files which
151                ;; are IN-PACKAGE SB-C. It would probably be cleaner
152                ;; to move at least most of them to files which are
153                ;; IN-PACKAGE SB-ASSEM.
154                "BRANCH" "DO-SSET-ELEMENTS" "FLUSHABLE" "MAKE-SSET" "SSET"
155                "SSET-ADJOIN" "SSET-DELETE" "SSET-ELEMENT" "SSET-EMPTY"))
156
157    #s(sb-cold:package-data
158       :name "SB!BIGNUM"
159       :doc "private: bignum implementation"
160       :use ("CL" "SB!KERNEL" "SB!INT" "SB!EXT")
161       :export ("%ADD-WITH-CARRY"
162                "%ALLOCATE-BIGNUM" "%ASHL" "%ASHR"
163                "%BIGNUM-LENGTH" "%BIGNUM-REF" "%BIGNUM-REF-WITH-OFFSET"
164                "%BIGNUM-SET" "%BIGNUM-SET-WITH-OFFSET"
165                "%BIGNUM-SET-LENGTH" "%DIGIT-0-OR-PLUSP"
166                "%DIGIT-LOGICAL-SHIFT-RIGHT"
167                "%FIXNUM-DIGIT-WITH-CORRECT-SIGN" "%FIXNUM-TO-DIGIT"
168                "%BIGFLOOR" "%LOGAND" "%LOGIOR" "%LOGNOT" "%LOGXOR"
169                "%MULTIPLY" "%MULTIPLY-AND-ADD"
170                "%SUBTRACT-WITH-BORROW" "ADD-BIGNUMS"
171                "BIGNUM-ASHIFT-LEFT" "BIGNUM-ASHIFT-RIGHT"
172                "BIGNUM-COMPARE" "BIGNUM-DEPOSIT-BYTE"
173                "BIGNUM-ELEMENT-TYPE" "BIGNUM-GCD" "BIGNUM-INDEX"
174                "BIGNUM-INTEGER-LENGTH" "BIGNUM-LOAD-BYTE"
175                "BIGNUM-LOGBITP"
176                "BIGNUM-LOGCOUNT" "BIGNUM-LOGICAL-AND"
177                "BIGNUM-LOGICAL-IOR" "BIGNUM-LOGICAL-NOT"
178                "BIGNUM-LOGICAL-XOR" "BIGNUM-PLUS-P"
179                "BIGNUM-TO-FLOAT" "BIGNUM-TRUNCATE" "BIGNUM-TYPE"
180                "FLOAT-BIGNUM-RATIO" "MAKE-SMALL-BIGNUM"
181                "MULTIPLY-BIGNUM-AND-FIXNUM" "MULTIPLY-BIGNUMS"
182                "MULTIPLY-FIXNUMS" "NEGATE-BIGNUM"
183                "%RANDOM-BIGNUM" "SUBTRACT-BIGNUM" "SXHASH-BIGNUM"))
184
185    #s(sb-cold:package-data
186       :name "SB!C"
187       :doc "private: implementation of the compiler"
188       ;; (It seems strange to have the compiler USE SB-ALIEN-INTERNALS,
189       ;; but the point seems to be to be able to express things like
190       ;; SB!C:DEFTRANSFORM SB-ALIEN-INTERNALS:MAKE-LOCAL-ALIEN without
191       ;; having to use a bunch of package prefixes, by putting them
192       ;; in the SB-C package. Maybe it'd be tidier to define an SB-ALIEN-COMP
193       ;; package for this? But it seems like a fairly low priority.)
194       ;; (Probably the same considerations also explain why BIGNUM is
195       ;;in the USE list.)
196       :use ("CL" "SB!ALIEN-INTERNALS" "SB!ALIEN" "SB!ASSEM" "SB!BIGNUM"
197                  #!+sb-dyncount "SB-DYNCOUNT" "SB!EXT" "SB!FASL" "SB!INT"
198                  "SB!KERNEL" "SB!SYS")
199       :reexport ("SLOT" "CODE-INSTRUCTIONS" "FLUSHABLE")
200       :export ("%ALIEN-FUNCALL"
201                "%CATCH-BREAKUP" "%CONTINUE-UNWIND"
202                "%LISTIFY-REST-ARGS" "%MORE-ARG" "%MORE-ARG-VALUES"
203                "%UNWIND-PROTECT-BREAKUP"
204
205                "*BACKEND-BYTE-ORDER*" "*BACKEND-DISASSEM-PARAMS*"
206                "*BACKEND-INSTRUCTION-FLAVORS*" "*BACKEND-INSTRUCTION-FORMATS*"
207                "*BACKEND-INTERNAL-ERRORS*" "*BACKEND-PAGE-BYTES*"
208                "*BACKEND-REGISTER-SAVE-PENALTY*"
209                "*BACKEND-SB-LIST*" "*BACKEND-SB-NAMES*"
210                "*BACKEND-SC-NAMES*" "*BACKEND-SC-NUMBERS*"
211                "*BACKEND-SPECIAL-ARG-TYPES*"
212                "*BACKEND-SUBFEATURES*"
213                "*BACKEND-T-PRIMITIVE-TYPE*"
214
215                "*CODE-SEGMENT*"
216                "*COUNT-VOP-USAGES*" "*ELSEWHERE*" "*FREE-FUNS*"
217                "*LEXENV*"
218                "*SETF-ASSUMED-FBOUNDP*"
219                "*SUPPRESS-VALUES-DECLARATION*"
220
221                #!+x86 "SET-FPU-WORD-FOR-C"
222                #!+x86 "SET-FPU-WORD-FOR-LISP"
223                "ALIGN-STACK-POINTER"
224                "ALIEN-FUNCALL-SAVES-FP-AND-PC"
225                "ALLOC-ALIEN-STACK-SPACE" "ALLOC-NUMBER-STACK-SPACE"
226                "ALLOCATE-CODE-OBJECT" "ALLOCATE-FRAME"
227                "ALLOCATE-DYNAMIC-CODE-OBJECT" "ALLOCATE-FULL-CALL-FRAME"
228                "ALWAYS-TRANSLATABLE"
229                "ANCESTOR-FRAME-REF" "ANCESTOR-FRAME-SET"
230                "ANY" "ARG-COUNT-ERROR" "ASSEMBLE-FILE"
231                "ATTRIBUTES" "ATTRIBUTES-INTERSECTION" "ATTRIBUTES-UNION"
232                "ATTRIBUTES=" "BIND"
233                "CALL" "CALL-LOCAL" "CALL-NAMED" "CALL-OUT" "CALL-VARIABLE"
234                "CALLEE-NFP-TN" "CALLEE-RETURN-PC-TN"
235                "CASE-BODY" "CATCH-BLOCK" "CHECK-CONS"
236                "CHECK-FIXNUM" "CHECK-FUN"
237                ;; FIXME: 32/64-bit issues
238                "CHECK-SIGNED-BYTE-32" "CHECK-SIGNED-BYTE-64"
239                "CHECK-SYMBOL"
240                ;; FIXME: 32/64-bit issues
241                "CHECK-UNSIGNED-BYTE-32" "CHECK-UNSIGNED-BYTE-64"
242                "CLOSURE-INIT" "CLOSURE-REF" "CLOSURE-INIT-FROM-FP"
243                "CODE-CONSTANT-REF" "CODE-CONSTANT-SET"
244                "*CODE-COVERAGE-INFO*"
245                "COMPARE-AND-SWAP-SLOT"
246                "COMPILE-IN-LEXENV"
247                "COMPILE-LAMBDA-FOR-DEFUN"
248                "%COMPILER-DEFUN" "COMPILER-ERROR" "FATAL-COMPILER-ERROR"
249                "COMPILER-NOTIFY"
250                "COMPILER-STYLE-WARN" "COMPILER-WARN"
251                "COMPONENT" "COMPONENT-HEADER-LENGTH"
252                "COMPONENT-INFO" "COMPONENT-LIVE-TN" "COMPUTE-FUN"
253                "COMPUTE-OLD-NFP" "COPY-MORE-ARG"
254                "CURRENT-BINDING-POINTER" "CURRENT-NFP-TN"
255                "CURRENT-STACK-POINTER"
256                "DEALLOC-ALIEN-STACK-SPACE"
257                "DEALLOC-NUMBER-STACK-SPACE"
258                "DEBUG-CATCH-TAG"
259                "DEF-IR1-TRANSLATOR"
260                "!DEF-PRIMITIVE-TYPE" "!DEF-PRIMITIVE-TYPE-ALIAS"
261                "DEFINE-SOURCE-TRANSFORM" "!DEF-VM-SUPPORT-ROUTINE"
262                "DEFINE-ASSEMBLY-ROUTINE"
263                "DEFINITION-SOURCE-LOCATION"
264                "DEFINITION-SOURCE-LOCATION-NAMESTRING"
265                "DEFINITION-SOURCE-LOCATION-TOPLEVEL-FORM-NUMBER"
266                "DEFINITION-SOURCE-LOCATION-PLIST"
267                "DEFINE-MODULAR-FUN"
268                "DEFINE-MOVE-FUN"
269                "DEFINE-MOVE-VOP" "DEFINE-STORAGE-BASE"
270                "DEFINE-STORAGE-CLASS" "DEFINE-VOP"
271                "DEFKNOWN" "DEFOPTIMIZER"
272                "DEFTRANSFORM" "DERIVE-TYPE"
273                "EMIT-BLOCK-HEADER"
274                "ENTRY-NODE-INFO-NLX-TAG" "ENTRY-NODE-INFO-ST-TOP"
275                "PHYSENV-DEBUG-LIVE-TN" "PHYSENV-LIVE-TN"
276                "FAST-SYMBOL-VALUE"
277                "FAST-SYMBOL-GLOBAL-VALUE"
278                "FIND-SAVED-FP-AND-PC"
279                "FIXUP-NOTE-KIND"
280                "FIXUP-NOTE-FIXUP"
281                "FIXUP-NOTE-POSITION"
282                "FOLDABLE"
283                "FORCE-TN-TO-STACK"
284                "FUN-INFO-DERIVE-TYPE" "FUN-INFO-IR2-CONVERT"
285                "FUN-INFO-LTN-ANNOTATE" "FUN-INFO-OPTIMIZER"
286                "GET-VECTOR-SUBTYPE"
287                "GET-TOPLEVELISH-FILE-INFO"
288                "HALT"
289                "IF-EQ"
290                "IMMEDIATE-TN-P"
291                "INLINE-SYNTACTIC-CLOSURE-LAMBDA"
292                "INSERT-STEP-CONDITIONS"
293                "IR2-COMPONENT-CONSTANTS" "IR2-CONVERT"
294                "IR2-PHYSENV-NUMBER-STACK-P"
295                "KNOWN-CALL-LOCAL" "KNOWN-RETURN"
296                "LAMBDA-WITH-LEXENV" "LEXENV-FIND"
297                "LOCATION=" "LTN-ANNOTATE"
298                "MAKE-ALIAS-TN" "MAKE-CATCH-BLOCK"
299                "MAKE-CLOSURE" "MAKE-CONSTANT-TN"
300                "MAKE-FIXUP-NOTE"
301                "MAKE-LOAD-TIME-CONSTANT-TN" "MAKE-N-TNS" "MAKE-NORMAL-TN"
302                "MAKE-OTHER-IMMEDIATE-TYPE" "MAKE-RANDOM-TN"
303                "MAKE-REPRESENTATION-TN" "MAKE-RESTRICTED-TN" "MAKE-SC-OFFSET"
304                "MAKE-STACK-POINTER-TN" "MAKE-TN-REF" "MAKE-UNWIND-BLOCK"
305                "MAKE-WIRED-TN" "MAYBE-COMPILER-NOTIFY"
306                "MAYBE-INLINE-SYNTACTIC-CLOSURE"
307                "META-PRIMITIVE-TYPE-OR-LOSE"
308                "META-SB-OR-LOSE" "META-SC-NUMBER-OR-LOSE" "META-SC-OR-LOSE"
309                "MORE-ARG-CONTEXT" "MOVABLE" "MOVE" "MULTIPLE-CALL"
310                "MULTIPLE-CALL-LOCAL" "MULTIPLE-CALL-NAMED"
311                "MULTIPLE-CALL-VARIABLE"
312                "%%NIP-DX" "%%NIP-VALUES"
313                "NLX-ENTRY" "NLX-ENTRY-MULTIPLE"
314                "NODE-STACK-ALLOCATE-P"
315                "NON-DESCRIPTOR-STACK" "NOTE-ENVIRONMENT-START"
316                "NOTE-THIS-LOCATION" "OPTIMIZER" "PACK-TRACE-TABLE"
317                "PARSE-EVAL-WHEN-SITUATIONS"
318                "POLICY"
319                "%%POP-DX"
320                "PREDICATE" "PRIMITIVE-TYPE" "PRIMITIVE-TYPE-OF"
321                "PRIMITIVE-TYPE-OR-LOSE" "PRIMITIVE-TYPE-VOP"
322                "PRIMITIVE-TYPE-NAME"
323                "PRIMITIVE-TYPE-INDIRECT-CELL-TYPE"
324                "PUSH-VALUES"
325                "READ-PACKED-BIT-VECTOR" "READ-VAR-INTEGER" "READ-VAR-STRING"
326                #!+inline-constants "REGISTER-INLINE-CONSTANT"
327                "RESET-STACK-POINTER" "RESTORE-DYNAMIC-STATE"
328                "RETURN-MULTIPLE" "SAVE-DYNAMIC-STATE" "SB"
329                "SB-ALLOCATED-SIZE" "SB-NAME" "SB-OR-LOSE" "SB-P" "SC" "SC-CASE"
330                "SC-IS" "SC-NAME" "SC-NUMBER" "SC-NUMBER-OR-LOSE" "SC-OFFSET"
331                "SC-OFFSET-OFFSET" "SC-OFFSET-SCN" "SC-OR-LOSE" "SC-P" "SC-SB"
332                "SET-UNWIND-PROTECT" "SET-VECTOR-SUBTYPE"
333                "SETUP-CLOSURE-ENVIRONMENT" "SETUP-ENVIRONMENT"
334                "SOURCE-LOCATION"
335                "SOURCE-TRANSFORM-LAMBDA"
336                "SPECIFY-SAVE-TN"
337                "STORE-COVERAGE-DATA"
338                "TAIL-CALL" "TAIL-CALL-NAMED"
339                "TAIL-CALL-VARIABLE" "TEMPLATE-OR-LOSE"
340                "TN" "TN-OFFSET" "TN-P" "TN-REF" "TN-REF-ACROSS" "TN-REF-LOAD-TN"
341                "TN-REF-NEXT" "TN-REF-NEXT-REF" "TN-REF-P" "TN-REF-TARGET"
342                "TN-REF-TN" "TN-REF-VOP" "TN-REF-WRITE-P" "TN-SC" "TN-VALUE"
343                "TRACE-TABLE-ENTRY" "TYPE-CHECK-ERROR" "UNBIND" "UNBIND-TO-HERE"
344                "UNSAFE" "UNSAFELY-FLUSHABLE" "UNWIND" "UWP-ENTRY"
345                "VERIFY-ARG-COUNT" "WRITE-PACKED-BIT-VECTOR"
346                "WRITE-VAR-INTEGER" "WRITE-VAR-STRING" "XEP-ALLOCATE-FRAME"
347                "LABEL-ID" "FIXUP" "FIXUP-FLAVOR" "FIXUP-NAME" "FIXUP-OFFSET"
348                "FIXUP-P" "MAKE-FIXUP"
349                "DEF-ALLOC"
350                "VAR-ALLOC"
351                "SAFE-FDEFN-FUN"
352                "NOTE-FIXUP"
353                "DEF-CASSER"
354                "DEF-REFFER"
355                "EMIT-CONSTANT"
356                "EMIT-NOP"
357                "DEF-SETTER"
358                "FIXED-ALLOC"
359                "MAKE-UNBOUND-MARKER"
360                "MAKE-FUNCALLABLE-INSTANCE-TRAMP"
361                "RETURN-SINGLE"
362                "NOTE-NEXT-INSTRUCTION"
363                "SET-SLOT" "INIT-SLOT"
364                "LOCATION-NUMBER"
365                "*COMPONENT-BEING-COMPILED*"
366                "BLOCK-NUMBER"
367                "BACKEND"
368                "IR2-BLOCK-BLOCK"
369                "VOP-BLOCK"
370                "*ASSEMBLY-OPTIMIZE*"
371                "LARGE-ALLOC"
372                "%SET-SIMPLE-FUN-SELF"
373                "VM-SUPPORT-ROUTINES-IMMEDIATE-CONSTANT-SC"
374                "VM-SUPPORT-ROUTINES-BOXED-IMMEDIATE-SC-P"
375                "VM-SUPPORT-ROUTINES-LOCATION-PRINT-NAME"
376                "VM-SUPPORT-ROUTINES-PRIMITIVE-TYPE-OF"
377                "VM-SUPPORT-ROUTINES-PRIMITIVE-TYPE"
378                "VM-SUPPORT-ROUTINES-MAKE-CALL-OUT-TNS"
379                "VM-SUPPORT-ROUTINES-STANDARD-ARG-LOCATION"
380                "VM-SUPPORT-ROUTINES-MAKE-RETURN-PC-PASSING-LOCATION"
381                "VM-SUPPORT-ROUTINES-MAKE-OLD-FP-PASSING-LOCATION"
382                "VM-SUPPORT-ROUTINES-MAKE-OLD-FP-SAVE-LOCATION"
383                "VM-SUPPORT-ROUTINES-MAKE-RETURN-PC-SAVE-LOCATION"
384                "VM-SUPPORT-ROUTINES-MAKE-ARG-COUNT-LOCATION"
385                "VM-SUPPORT-ROUTINES-MAKE-NFP-TN"
386                "VM-SUPPORT-ROUTINES-MAKE-STACK-POINTER-TN"
387                "VM-SUPPORT-ROUTINES-MAKE-NUMBER-STACK-POINTER-TN"
388                "VM-SUPPORT-ROUTINES-MAKE-UNKNOWN-VALUES-LOCATIONS"
389                "VM-SUPPORT-ROUTINES-SELECT-COMPONENT-FORMAT"
390                "VM-SUPPORT-ROUTINES-MAKE-NLX-SP-TN"
391                "VM-SUPPORT-ROUTINES-MAKE-DYNAMIC-STATE-TNS"
392                "VM-SUPPORT-ROUTINES-MAKE-NLX-ENTRY-ARG-START-LOCATION"
393                "VM-SUPPORT-ROUTINES-GENERATE-CALL-SEQUENCE"
394                "VM-SUPPORT-ROUTINES-GENERATE-RETURN-SEQUENCE"
395                "VM-SUPPORT-ROUTINES-EMIT-NOP"
396                "VM-SUPPORT-ROUTINES-LOCATION-NUMBER"
397
398                "WITH-SOURCE-LOCATION"
399                "*SOURCE-LOCATION-THUNKS*"
400
401                "BRANCH-IF"))
402
403    #s(sb-cold:package-data
404       :name "SB!DEBUG"
405       :doc
406       "sorta public: Eventually this should become the debugger interface, with
407 basic stuff like BACKTRACE and ARG. For now, the actual supported interface
408 is still mixed indiscriminately with low-level internal implementation stuff
409 like *STACK-TOP-HINT* and unsupported stuff like *TRACED-FUN-LIST*."
410       :use ("CL" "SB!EXT" "SB!INT" "SB!SYS" "SB!KERNEL")
411       :reexport ("*DEBUG-PRINT-VARIABLE-ALIST*")
412       :export ("*DEBUG-BEGINNER-HELP-P*"
413                "*DEBUG-CONDITION*"
414                "*DEBUG-READTABLE*" "*DEBUG-HELP-STRING*"
415                "*FLUSH-DEBUG-ERRORS*" "*IN-THE-DEBUGGER*"
416                "*SHOW-ENTRY-POINT-DETAILS*"
417                "*TRACE-INDENTATION-STEP*" "*MAX-TRACE-INDENTATION*"
418                "*TRACE-FRAME*" "*TRACED-FUN-LIST*"
419                "ARG" "BACKTRACE" "BACKTRACE-AS-LIST" "INTERNAL-DEBUG" "VAR"
420                "*PRINT-LOCATION-KIND*"
421                "*ONLY-BLOCK-START-LOCATIONS*" "*STACK-TOP-HINT*"
422                "*TRACE-VALUES*" "DO-DEBUG-COMMAND"
423                "*TRACE-ENCAPSULATE-DEFAULT*"
424                "FRAME-HAS-DEBUG-TAG-P"
425                "UNWIND-TO-FRAME-AND-CALL"))
426
427    #s(sb-cold:package-data
428       :name "SB!DI"
429       :doc "private: primitives used to write debuggers"
430       :use ("CL" "SB!EXT" "SB!INT" "SB!KERNEL" "SB!SYS" "SB!VM")
431       :import-from (("SB!C"
432                      "DEBUG-SOURCE-FORM" "DEBUG-SOURCE-NAMESTRING"
433                      "DEBUG-SOURCE-CREATED" "DEBUG-SOURCE-COMPILED"
434                      "DEBUG-SOURCE-START-POSITIONS" "MAKE-DEBUG-SOURCE"
435                      "DEBUG-SOURCE" "DEBUG-SOURCE-P"))
436       :reexport ("DEBUG-SOURCE-FORM"
437                  "DEBUG-SOURCE-NAMESTRING"
438                  "DEBUG-SOURCE-CREATED" "DEBUG-SOURCE-COMPILED"
439                  "DEBUG-SOURCE-START-POSITIONS" "DEBUG-SOURCE"
440                  "DEBUG-SOURCE-P")
441       :export ("ACTIVATE-BREAKPOINT"
442                "AMBIGUOUS-DEBUG-VARS" "AMBIGUOUS-VAR-NAME" "BREAKPOINT"
443                "BREAKPOINT-ACTIVE-P" "BREAKPOINT-HOOK-FUN" "BREAKPOINT-INFO"
444                "BREAKPOINT-KIND" "BREAKPOINT-P" "BREAKPOINT-WHAT" "CODE-LOCATION"
445                "CODE-LOCATION-DEBUG-BLOCK" "CODE-LOCATION-DEBUG-FUN"
446                "CODE-LOCATION-DEBUG-SOURCE" "CODE-LOCATION-FORM-NUMBER"
447                "CODE-LOCATION-P" "CODE-LOCATION-TOPLEVEL-FORM-OFFSET"
448                "CODE-LOCATION-UNKNOWN-P" "CODE-LOCATION=" "DEACTIVATE-BREAKPOINT"
449                "DEBUG-BLOCK" "DEBUG-BLOCK-ELSEWHERE-P" "DEBUG-BLOCK-P"
450                "DEBUG-BLOCK-SUCCESSORS" "DEBUG-CONDITION" "DEBUG-ERROR"
451                "DEBUG-FUN" "DEBUG-FUN-FUN" "DEBUG-FUN-KIND"
452                "DEBUG-FUN-LAMBDA-LIST" "DEBUG-FUN-NAME"
453                "DEBUG-FUN-P" "DEBUG-FUN-START-LOCATION"
454                "DEBUG-FUN-SYMBOL-VARS"
455                "DEBUG-SOURCE-ROOT-NUMBER" "DEBUG-VAR"
456                "DEBUG-VAR-ID" "DEBUG-VAR-INFO-AVAILABLE"
457                "DEBUG-VAR-SYMBOL-NAME" "DEBUG-VAR-P" "DEBUG-VAR-PACKAGE-NAME"
458                "DEBUG-VAR-SYMBOL" "DEBUG-VAR-VALID-VALUE"
459                "DEBUG-VAR-VALIDITY" "DEBUG-VAR-VALUE"
460                "DELETE-BREAKPOINT"
461                "DO-DEBUG-BLOCK-LOCATIONS" "DO-DEBUG-FUN-BLOCKS"
462                "DO-DEBUG-FUN-VARS"
463                "FORM-NUMBER-TRANSLATIONS"
464                "FRAME" "FRAME-CATCHES" "FRAME-CODE-LOCATION"
465                "FRAME-DEBUG-FUN" "FRAME-DOWN"
466                "FRAME-FUN-MISMATCH" "FRAME-NUMBER" "FRAME-P" "FRAME-UP"
467                "REPLACE-FRAME-CATCH-TAG"
468                "FUN-DEBUG-FUN" "FUN-END-COOKIE-VALID-P"
469                "INVALID-CONTROL-STACK-POINTER" "INVALID-VALUE"
470                "LAMBDA-LIST-UNAVAILABLE" "MAKE-BREAKPOINT" "NO-DEBUG-BLOCKS"
471                "NO-DEBUG-FUN-RETURNS" "NO-DEBUG-INFO" "PREPROCESS-FOR-EVAL"
472                "EVAL-IN-FRAME" "RETURN-FROM-FRAME" "SOURCE-PATH-CONTEXT"
473                "TOP-FRAME" "UNHANDLED-DEBUG-CONDITION" "UNKNOWN-CODE-LOCATION"
474                "UNKNOWN-CODE-LOCATION-P" "UNKNOWN-DEBUG-VAR"
475                "CODE-LOCATION-KIND" "FLUSH-FRAMES-ABOVE"))
476
477    #s(sb-cold:package-data
478       :name "SB!DISASSEM"
479       :doc "private: stuff related to the implementation of the disassembler"
480       :use ("CL" "SB!EXT" "SB!INT")
481       :export ("*DISASSEM-INST-ALIGNMENT-BYTES*"
482                "*DISASSEM-NOTE-COLUMN*" "*DISASSEM-OPCODE-COLUMN-WIDTH*"
483                "*DISASSEM-SCHEDULER-P*" "*DISASSEM-LOCATION-COLUMN-WIDTH*"
484                "ADD-COMMENT-HOOK" "ADD-HOOK" "ADD-NOTE-HOOK"
485                "ARG-VALUE" "CREATE-DSTATE" "DISASSEM-STATE"
486                "DISASSEMBLE-CODE-COMPONENT"
487                "DISASSEMBLE-FUN" "DISASSEMBLE-MEMORY"
488                "DISASSEMBLE-SEGMENT" "DISASSEMBLE-SEGMENTS"
489                "DSTATE-CODE" "DSTATE-CURPOS" "DSTATE-GET-INST-PROP"
490                "DSTATE-GET-PROP" "DSTATE-PUT-INST-PROP"
491                "DSTATE-NEXTPOS" "DSTATE-SEGMENT-LENGTH"
492                "DSTATE-SEGMENT-SAP" "DSTATE-SEGMENT-START"
493                "FIELD-TYPE" "FIND-INST" "GEN-FIELD-TYPE-DECL-FORM"
494                "GEN-INST-DECL-FORM" "GEN-INST-FORMAT-DECL-FORM"
495                "GET-CODE-SEGMENTS" "GET-FUN-SEGMENTS"
496                "GET-INST-SPACE" "HANDLE-BREAK-ARGS"
497                "INST" "INST-FORMAT" "LABEL-SEGMENTS"
498                "MAYBE-NOTE-ASSEMBLER-ROUTINE"
499                "MAYBE-NOTE-ASSOCIATED-STORAGE-REF"
500                "MAYBE-NOTE-NIL-INDEXED-OBJECT"
501                "MAYBE-NOTE-NIL-INDEXED-SYMBOL-SLOT-REF"
502                "MAYBE-NOTE-SINGLE-STORAGE-REF" "NOTE"
503                "NOTE-CODE-CONSTANT" "PARAMS" "PRIN1-QUOTED-SHORT"
504                "PRIN1-SHORT" "PRINT-BYTES"
505                "PRINT-CURRENT-ADDRESS" "PRINT-FIELD" "PRINT-INST"
506                "PRINT-INST-USING" "PRINT-NOTES-AND-NEWLINE"
507                "PRINT-WORDS" "SAP-REF-DCHUNK" "SEG-DEBUG-FUN"
508                "SEG-LENGTH" "SEG-START" "SEGMENT"
509                "SET-ADDRESS-PRINTING-RANGE" "SET-DISASSEM-PARAMS"
510                "SET-DSTATE-SEGMENT" "SIGN-EXTEND" "SPECIALIZE"
511                "GEN-PRINTER-DEF-FORMS-DEF-FORM" "MAKE-DSTATE"
512                "DEFINE-ARG-TYPE" "GEN-ARG-TYPE-DEF-FORM"
513                "READ-SIGNED-SUFFIX" "ADD-OFFS-HOOK"
514                "MAKE-MEMORY-SEGMENT" "GEN-PREAMBLE-FORM"
515                "MAKE-SEGMENT" "SEGMENT-OVERFLOW"
516                "SEG-VIRTUAL-LOCATION" "MAKE-DECODED-INST"
517                "DCHUNK" "*DEFAULT-DSTATE-HOOKS*"
518                "MAKE-CODE-SEGMENT" "MAKE-OFFS-HOOK"
519                "DSTATE-SEGMENT" "DSTATE-CUR-OFFS"
520                "PRINC16" "INSTRUCTION" "DEFINE-INSTRUCTION-FORMAT"
521                "DSTATE-NEXT-OFFS" "INSTALL-INST-FLAVORS"
522                "SEG-SAP-MAKER" "DISASSEMBLE-ASSEM-SEGMENT"
523                "GEN-CLEAR-INFO-FORM" "READ-SUFFIX"
524                "MAP-SEGMENT-INSTRUCTIONS" "GEN-FORMAT-DEF-FORM"
525                "SET-LOCATION-PRINTING-RANGE" "MAKE-VECTOR-SEGMENT"
526                "ADD-OFFS-NOTE-HOOK" "ADD-OFFS-COMMENT-HOOK"
527                "DSTATE-CUR-ADDR" "DSTATE-NEXT-ADDR"))
528
529    #!+sb-dyncount
530    #s(sb-cold:package-data
531       :name "SB!DYNCOUNT"
532       :doc "private: some somewhat-stale code for collecting runtime statistics"
533       :use ("CL" "SB!ALIEN-INTERNALS" "SB!ALIEN" "SB!BIGNUM"
534                  "SB!EXT" "SB!INT" "SB!KERNEL" "SB!ASSEM" "SB!SYS")
535       :export ("*COLLECT-DYNAMIC-STATISTICS*"
536                "COUNT-ME"
537                "DYNCOUNT-INFO-COUNTS" "DYNCOUNT-INFO-COSTS"
538                "IR2-COMPONENT-DYNCOUNT-INFO"
539                "DYNCOUNT-INFO" "DYNCOUNT-INFO-P"))
540
541    #s(sb-cold:package-data
542       :name "SB!FASL"
543       :doc "private: stuff related to FASL load/dump logic (and GENESIS)"
544       :use ("CL" "SB!ALIEN" "SB!ASSEM" "SB!BIGNUM" "SB!C"
545                  "SB!EXT" "SB!INT" "SB!KERNEL" "SB!SYS")
546       :export ("*ASSEMBLER-ROUTINES*"
547                "+BACKEND-FASL-FILE-IMPLEMENTATION+"
548                "BUILD-ID-CORE-ENTRY-TYPE-CODE"
549                "*FASL-FILE-TYPE*"
550                "CLOSE-FASL-OUTPUT"
551                "DEFLATED-CORE-SPACE-ID-FLAG"
552                "DUMP-ASSEMBLER-ROUTINES"
553                "DUMP-OBJECT"
554                "DYNAMIC-CORE-SPACE-ID"
555                "END-CORE-ENTRY-TYPE-CODE"
556                "FASL-CONSTANT-ALREADY-DUMPED-P"
557                "+FASL-FILE-VERSION+"
558                "FASL-DUMP-COMPONENT"
559                "FASL-DUMP-COLD-FSET"
560                "FASL-DUMP-LOAD-TIME-VALUE" "FASL-DUMP-LOAD-TIME-VALUE-LAMBDA"
561                "FASL-DUMP-SOURCE-INFO" "FASL-DUMP-TOPLEVEL-LAMBDA-CALL"
562                "FASL-NOTE-HANDLE-FOR-CONSTANT"
563                "FASL-OUTPUT" "FASL-OUTPUT-P"
564                "FASL-OUTPUT-ENTRY-TABLE" "FASL-OUTPUT-STREAM"
565                "FASL-VALIDATE-STRUCTURE"
566                "INITIAL-FUN-CORE-ENTRY-TYPE-CODE"
567                "*!LOAD-TIME-VALUES*"
568                "LOAD-TYPE-PREDICATE"
569                "MAX-CORE-SPACE-ID"
570                "NEW-DIRECTORY-CORE-ENTRY-TYPE-CODE"
571                "OPEN-FASL-OUTPUT" "PAGE-TABLE-CORE-ENTRY-TYPE-CODE"
572                "READ-ONLY-CORE-SPACE-ID"
573                "*!REVERSED-COLD-TOPLEVELS*"
574                "STATIC-CORE-SPACE-ID"
575                "VERSION-CORE-ENTRY-TYPE-CODE"))
576
577    ;; This package is a grab bag for things which used to be internal
578    ;; symbols in package COMMON-LISP. Lots of these symbols are accessed
579    ;; with explicit SB!IMPL:: prefixes in the code. It would be nice to
580    ;; reduce the use of this practice, so if symbols from here which are
581    ;; accessed that way are found to belong more appropriately in an
582    ;; existing package (e.g. SB!KERNEL or SB!SYS or SB!EXT or SB!FASL),
583    ;; I (WHN 19990223) encourage maintainers to move them there..
584    #s(sb-cold:package-data
585       :name "SB!IMPL"
586       :doc "private: a grab bag of implementation details"
587       :use ("CL" "SB!ALIEN" "SB!BIGNUM" "SB!DEBUG" "SB!EXT"
588                  "SB!FASL" "SB!GRAY" "SB!INT" "SB!KERNEL" "SB!SYS"))
589
590    #s(sb-cold:package-data
591       :name "SB!EXT"
592       :doc "public: miscellaneous supported extensions to the ANSI Lisp spec"
593       :use ("CL" "SB!ALIEN" "SB!INT" "SB!SYS" "SB!GRAY")
594       :export (;; Information about how the program was invoked is
595                ;; nonstandard but very useful.
596                "*POSIX-ARGV*" "*CORE-PATHNAME*" "*RUNTIME-PATHNAME*"
597                "POSIX-GETENV" "POSIX-ENVIRON"
598
599                ;; Customizing initfile locations
600                "*USERINIT-PATHNAME-FUNCTION*"
601                "*SYSINIT-PATHNAME-FUNCTION*"
602
603                ;; Compare and Swap support
604                "CAS"
605                "COMPARE-AND-SWAP"
606                "DEFCAS"
607                "DEFINE-CAS-EXPANDER"
608                "GET-CAS-EXPANSION"
609
610                ;; Other atomic operations and types related to them
611                "ATOMIC-INCF"
612                "ATOMIC-DECF"
613                "ATOMIC-UPDATE"
614                "WORD"
615                "MOST-POSITIVE-WORD"
616
617                ;; Not an atomic operation, but should be used with them
618                "SPIN-LOOP-HINT"
619
620                ;; Waiting for arbitrary events.
621                "WAIT-FOR"
622
623                ;; Time related things
624                "CALL-WITH-TIMING"
625                "GET-TIME-OF-DAY"
626
627                ;; People have various good reasons to mess with the GC.
628                "*AFTER-GC-HOOKS*"
629                "BYTES-CONSED-BETWEEN-GCS"
630                "GC" "GET-BYTES-CONSED"
631                "*GC-RUN-TIME*"
632                "PURIFY"
633                "DYNAMIC-SPACE-SIZE"
634                ;; Gencgc only, but symbols exist for manual building
635                ;; convenience on all platforms.
636                "GENERATION-AVERAGE-AGE"
637                "GENERATION-BYTES-ALLOCATED"
638                "GENERATION-BYTES-CONSED-BETWEEN-GCS"
639                "GENERATION-MINIMUM-AGE-BEFORE-GC"
640                "GENERATION-NUMBER-OF-GCS"
641                "GENERATION-NUMBER-OF-GCS-BEFORE-PROMOTION"
642                "GC-LOGFILE"
643
644                ;; Stack allocation control
645                "*STACK-ALLOCATE-DYNAMIC-EXTENT*"
646
647                ;; Customizing printing of compiler and debugger messages
648                "*COMPILER-PRINT-VARIABLE-ALIST*"
649                "*DEBUG-PRINT-VARIABLE-ALIST*"
650
651                ;; Hooks into init & save sequences
652                "*INIT-HOOKS*" "*SAVE-HOOKS*" "*EXIT-HOOKS*"
653
654                ;; Controlling exiting other threads.
655                "*EXIT-TIMEOUT*"
656
657                ;; There is no one right way to report progress on
658                ;; hairy compiles.
659                "*COMPILE-PROGRESS*"
660
661                ;; It can be handy to be able to evaluate expressions involving
662                ;; the thing under examination by CL:INSPECT.
663                "*INSPECTED*"
664
665                ;; There is no one right way to do efficiency notes.
666                "*EFFICIENCY-NOTE-COST-THRESHOLD*" "*EFFICIENCY-NOTE-LIMIT*"
667
668                ;; There's no one right way to report errors.
669                "*ENCLOSING-SOURCE-CUTOFF*"
670                "*UNDEFINED-WARNING-LIMIT*"
671
672                ;; and for dedicated users who really want to customize
673                ;; error reporting, we have
674                "DEFINE-SOURCE-CONTEXT"
675
676                ;; and given how many users dislike strict treatment of
677                ;; DEFCONSTANT, let's give them enough rope to escape by
678                "DEFCONSTANT-UNEQL" "DEFCONSTANT-UNEQL-NAME"
679                "DEFCONSTANT-UNEQL-NEW-VALUE" "DEFCONSTANT-UNEQL-OLD-VALUE"
680
681                ;; global lexicals, access to global symbol values
682                "DEFGLOBAL"
683                "SYMBOL-GLOBAL-VALUE"
684
685                ;; package-locking stuff
686                #!+sb-package-locks "PACKAGE-LOCKED-P"
687                #!+sb-package-locks "LOCK-PACKAGE"
688                #!+sb-package-locks "UNLOCK-PACKAGE"
689                #!+sb-package-locks "PACKAGE-IMPLEMENTED-BY-LIST"
690                #!+sb-package-locks "PACKAGE-IMPLEMENTS-LIST"
691                #!+sb-package-locks "ADD-IMPLEMENTATION-PACKAGE"
692                #!+sb-package-locks "REMOVE-IMPLEMENTATION-PACKAGE"
693                #!+sb-package-locks "WITH-UNLOCKED-PACKAGES"
694                #!+sb-package-locks "PACKAGE-LOCK-VIOLATION"
695                #!+sb-package-locks "PACKAGE-LOCKED-ERROR"
696                #!+sb-package-locks "SYMBOL-PACKAGE-LOCKED-ERROR"
697                #!+sb-package-locks "PACKAGE-LOCKED-ERROR-SYMBOL"
698                "WITHOUT-PACKAGE-LOCKS"
699                "DISABLE-PACKAGE-LOCKS"
700                "ENABLE-PACKAGE-LOCKS"
701
702                ;; Custom conditions & condition accessors for users to handle.
703                "CODE-DELETION-NOTE"
704                "COMPILER-NOTE"
705                "IMPLICIT-GENERIC-FUNCTION-NAME"
706                "IMPLICIT-GENERIC-FUNCTION-WARNING"
707                "INVALID-FASL"
708                "DEPRECATION-CONDITION"
709
710                "NAME-CONFLICT" "NAME-CONFLICT-FUNCTION"
711                "NAME-CONFLICT-DATUM" "NAME-CONFLICT-SYMBOLS"
712                "RESOLVE-CONFLICT"
713
714                "PRINT-UNREADABLY"
715
716                ;; and a mechanism for controlling same at compile time
717                "MUFFLE-CONDITIONS" "UNMUFFLE-CONDITIONS"
718
719                ;; and one for controlling same at runtime
720                "*MUFFLED-WARNINGS*"
721
722                ;; specification which print errors to ignore ala *break-on-signal*
723                "*SUPPRESS-PRINT-ERRORS*"
724
725                ;; extended declarations..
726                "ALWAYS-BOUND" "FREEZE-TYPE" "GLOBAL" "INHIBIT-WARNINGS"
727                "MAYBE-INLINE"
728
729                ;; ..and variables to control compiler policy
730                "*INLINE-EXPANSION-LIMIT*"
731                "*DERIVE-FUNCTION-TYPES*"
732
733                ;; ..and inspector of compiler policy
734                "DESCRIBE-COMPILER-POLICY"
735                "RESTRICT-COMPILER-POLICY"
736                "WITH-COMPILER-POLICY"
737
738                ;; a special form for breaking out of our "declarations
739                ;; are assertions" default
740                "TRULY-THE"
741
742                ;; Misc. array and vector tools.
743                "ARRAY-STORAGE-VECTOR"
744
745                ;; This is something which must exist inside any Common
746                ;; Lisp implementation, and which someone writing a
747                ;; customized toplevel might well want. It seems perverse
748                ;; to hide it from them..
749                "INTERACTIVE-EVAL"
750
751                ;; Used by LOAD and EVAL-WHEN to pass toplevel indexes
752                ;; to compiler.
753                "EVAL-TLF"
754
755                ;; weak pointers and finalization
756                "CANCEL-FINALIZATION"
757                "FINALIZE"
758                "MAKE-WEAK-POINTER"
759                "WEAK-POINTER"
760                "WEAK-POINTER-P"
761                "WEAK-POINTER-VALUE"
762
763                ;; Hash table extensions
764                "DEFINE-HASH-TABLE-TEST"
765                "HASH-TABLE-SYNCHRONIZED-P"
766                "HASH-TABLE-WEAKNESS"
767                "WITH-LOCKED-HASH-TABLE"
768
769                ;; If the user knows we're doing IEEE, he might reasonably
770                ;; want to do this stuff.
771                "FLOAT-DENORMALIZED-P"
772                "FLOAT-NAN-P" "FLOAT-TRAPPING-NAN-P"
773                "FLOAT-INFINITY-P"
774                "SHORT-FLOAT-NEGATIVE-INFINITY"
775                "SHORT-FLOAT-POSITIVE-INFINITY"
776                "SINGLE-FLOAT-NEGATIVE-INFINITY"
777                "SINGLE-FLOAT-POSITIVE-INFINITY"
778                "DOUBLE-FLOAT-NEGATIVE-INFINITY"
779                "DOUBLE-FLOAT-POSITIVE-INFINITY"
780                "LONG-FLOAT-NEGATIVE-INFINITY"
781                "LONG-FLOAT-POSITIVE-INFINITY"
782
783                ;; hacks to work around system limitations
784                "*INTEXP-MAXIMUM-EXPONENT*" ; since we crash hard when
785                                         ; memory is exhausted
786
787                ;; saving Lisp images
788                "SAVE-LISP-AND-DIE"
789
790                ;; provided for completeness to make it more convenient
791                ;; to use command-line --disable-debugger functionality
792                ;; in oddball situations (like building core files using
793                ;; scripts which run unattended, when the core files are
794                ;; intended for interactive use)
795                "DISABLE-DEBUGGER"
796                "ENABLE-DEBUGGER"
797
798                ;; the mechanism by which {en,dis}able-debugger works is
799                ;; also exported for people writing alternative toplevels
800                ;; (Emacs, CLIM interfaces, etc)
801                "*INVOKE-DEBUGGER-HOOK*"
802
803                ;; miscellaneous useful supported extensions
804                "QUIT" "EXIT"
805                "*ED-FUNCTIONS*"
806                "*MODULE-PROVIDER-FUNCTIONS*"
807                "WITH-TIMEOUT" "TIMEOUT"
808                "SEED-RANDOM-STATE"
809                "TYPEXPAND-1" "TYPEXPAND" "TYPEXPAND-ALL"
810                "DEFINED-TYPE-NAME-P" "VALID-TYPE-SPECIFIER-P"
811                "DELETE-DIRECTORY"
812                "SET-SBCL-SOURCE-LOCATION"
813
814                ;; stepping interface
815                "STEP-CONDITION" "STEP-FORM-CONDITION" "STEP-FINISHED-CONDITION"
816                "STEP-VALUES-CONDITION" "STEP-VARIABLE-CONDITION"
817                "STEP-CONDITION-FORM" "STEP-CONDITION-RESULT"
818                "STEP-CONTINUE" "STEP-NEXT" "STEP-INTO"
819                "STEP-CONDITION-ARGS" "*STEPPER-HOOK*" "STEP-OUT"
820
821                ;; RUN-PROGRAM is not only useful for users, but also
822                ;; useful to implement parts of SBCL itself, so we're
823                ;; going to have to implement it anyway, so we might
824                ;; as well support it. And then once we're committed
825                ;; to implementing RUN-PROGRAM, it's nice to have it
826                ;; return a PROCESS object with operations defined on
827                ;; that object.
828                "RUN-PROGRAM"
829                "PROCESS-ALIVE-P" "PROCESS-CLOSE"
830                "PROCESS-CORE-DUMPED" "PROCESS-ERROR" "PROCESS-EXIT-CODE"
831                "PROCESS-INPUT" "PROCESS-KILL" "PROCESS-OUTPUT" "PROCESS-P"
832                "PROCESS-PID" "PROCESS-PLIST" "PROCESS-PTY" "PROCESS-STATUS"
833                "PROCESS-STATUS-HOOK" "PROCESS-WAIT"
834
835                ;; pathnames
836                "NATIVE-PATHNAME"
837                "PARSE-NATIVE-NAMESTRING"
838                "NATIVE-NAMESTRING"
839
840                ;; external-format support
841                "OCTETS-TO-STRING" "STRING-TO-OCTETS"
842
843                ;; Whether to use the interpreter or the compiler for EVAL
844                "*EVALUATOR-MODE*"
845
846                ;; timer
847                "TIMER" "MAKE-TIMER" "TIMER-NAME" "TIMER-SCHEDULED-P"
848                "SCHEDULE-TIMER" "UNSCHEDULE-TIMER" "LIST-ALL-TIMERS"))
849
850    #s(sb-cold:package-data
851       :name "SB!FORMAT"
852       :doc "private: implementation of FORMAT and friends"
853       :use ("CL" "SB!EXT" "SB!INT" "SB!KERNEL")
854       :export ("%COMPILER-WALK-FORMAT-STRING" "FORMAT-ERROR"))
855
856    #s(sb-cold:package-data
857       :name "SB!GRAY"
858       :doc
859       "public: an implementation of the stream-definition-by-user
860 Lisp extension proposal by David N. Gray"
861       :use ("CL" "SB!EXT" "SB!INT" "SB!KERNEL")
862       :export ("FUNDAMENTAL-BINARY-STREAM"
863                "FUNDAMENTAL-BINARY-INPUT-STREAM"
864                "FUNDAMENTAL-BINARY-OUTPUT-STREAM" "FUNDAMENTAL-CHARACTER-STREAM"
865                "FUNDAMENTAL-CHARACTER-INPUT-STREAM"
866                "FUNDAMENTAL-CHARACTER-OUTPUT-STREAM"
867                "FUNDAMENTAL-INPUT-STREAM" "FUNDAMENTAL-OUTPUT-STREAM"
868                "FUNDAMENTAL-STREAM"
869                "STREAM-ADVANCE-TO-COLUMN" "STREAM-CLEAR-INPUT"
870                "STREAM-CLEAR-OUTPUT" "STREAM-FILE-POSITION" "STREAM-FINISH-OUTPUT" "STREAM-FORCE-OUTPUT"
871                "STREAM-FRESH-LINE" "STREAM-LINE-COLUMN" "STREAM-LINE-LENGTH"
872                "STREAM-LISTEN" "STREAM-PEEK-CHAR" "STREAM-READ-BYTE"
873                "STREAM-READ-CHAR" "STREAM-READ-CHAR-NO-HANG" "STREAM-READ-LINE"
874                "STREAM-READ-SEQUENCE" "STREAM-START-LINE-P" "STREAM-TERPRI"
875                "STREAM-UNREAD-CHAR"
876                "STREAM-WRITE-BYTE" "STREAM-WRITE-CHAR" "STREAM-WRITE-SEQUENCE"
877                "STREAM-WRITE-STRING"))
878
879    #s(sb-cold:package-data
880       :name "SB!INT"
881       :doc
882       "private: miscellaneous unsupported extensions to the ANSI spec. Much of
883 the stuff in here originated in CMU CL's EXTENSIONS package and is retained,
884 possibly temporariliy, because it might be used internally."
885       :use ("CL" "SB!ALIEN" "SB!GRAY" "SB!FASL" "SB!SYS")
886       :export (;; lambda list keyword extensions
887                "&MORE"
888
889                ;; utilities for floating point zero handling
890                "FP-ZERO-P"
891                "NEG-FP-ZERO"
892
893                ;; Stack allocation without any questions asked
894                "TRULY-DYNAMIC-EXTENT"
895
896                ;; Like WITH-LOCKED-HASH-TABLE, but disabled interrupts
897                "WITH-LOCKED-SYSTEM-TABLE"
898
899                ;; generic set implementation
900                "ADD-TO-XSET"
901                "ALLOC-XSET"
902                "MAP-XSET"
903                "XSET"
904                "XSET-COUNT"
905                "XSET-EMPTY-P"
906                "XSET-INTERSECTION"
907                "XSET-MEMBER-P"
908                "XSET-MEMBERS"
909                "XSET-SUBSET-P"
910                "XSET-UNION"
911
912                ;; communication between the runtime and Lisp
913                "*CORE-STRING*"
914
915                ;; INFO stuff doesn't belong in a user-visible package, we
916                ;; should be able to change it without apology.
917                "*INFO-ENVIRONMENT*"
918                "CLEAR-INFO"
919                "COMPACT-INFO-ENVIRONMENT"
920                "DEFINE-INFO-CLASS" "DEFINE-INFO-TYPE"
921                "DO-INFO"
922                "INFO"
923                "MAKE-INFO-ENVIRONMENT"
924
925                ;; GENSYM variant that appends the current non-nil block
926                ;; name to the string if possible
927                "BLOCK-GENSYM"
928
929                ;; Calling a list of hook functions, plus error handling.
930                "CALL-HOOKS"
931
932                ;; Constant form evaluation
933                "CONSTANT-FORM-VALUE"
934                "CONSTANT-TYPEP"
935
936                ;; stepping control
937                "*STEPPING*" "*STEP*"
938
939                ;; packages grabbed once and for all
940                "*KEYWORD-PACKAGE*" "*CL-PACKAGE*"
941
942                ;; hash mixing operations
943                "MIX" "MIXF"
944
945                ;; Macroexpansion that doesn't touch special forms
946                "%MACROEXPAND"
947                "%MACROEXPAND-1"
948
949                ;; I'm not convinced that FDEFINITIONs are the ideal
950                ;; solution, so exposing ways to peek into the system
951                ;; seems undesirable, since it makes it harder to get
952                ;; rid of FDEFINITIONs entirely later.
953                "*SETF-FDEFINITION-HOOK*"
954
955                ;; error-reporting facilities
956                "ARGUMENTS-OUT-OF-DOMAIN-ERROR"
957                "BAD-TYPE"
958                "CLOSED-STREAM-ERROR"
959                "COMPILED-PROGRAM-ERROR"
960                "ENCAPSULATED-CONDITION"
961                "INTERPRETED-PROGRAM-ERROR"
962                "INVALID-ARRAY-ERROR"
963                "INVALID-ARRAY-INDEX-ERROR"
964                "INVALID-ARRAY-P"
965                "SIMPLE-CONTROL-ERROR" "SIMPLE-FILE-ERROR"
966                "SIMPLE-PARSE-ERROR" "SIMPLE-PROGRAM-ERROR"
967                "SIMPLE-READER-ERROR"
968                "SIMPLE-READER-PACKAGE-ERROR"
969                "SIMPLE-REFERENCE-ERROR"
970                "SIMPLE-REFERENCE-WARNING"
971                "SIMPLE-STREAM-ERROR"
972                "SIMPLE-STORAGE-CONDITION"
973                "SIMPLE-STYLE-WARNING"
974                "TRY-RESTART"
975
976                ;; error-signalling facilities
977                "STANDARD-READTABLE-MODIFIED-ERROR"
978                "STANDARD-PPRINT-DISPATCH-TABLE-MODIFIED-ERROR"
979                "ARRAY-BOUNDING-INDICES-BAD-ERROR"
980                "CIRCULAR-LIST-ERROR"
981                "SEQUENCE-BOUNDING-INDICES-BAD-ERROR"
982                "SPECIAL-FORM-FUNCTION"
983                "STYLE-WARN" "SIMPLE-COMPILER-NOTE"
984
985                ;; FIXME: potential SB!EXT exports
986                "CHARACTER-CODING-ERROR"
987                "CHARACTER-DECODING-ERROR" "CHARACTER-DECODING-ERROR-OCTETS"
988                "CHARACTER-ENCODING-ERROR" "CHARACTER-ENCODING-ERROR-CODE"
989                "STREAM-DECODING-ERROR" "STREAM-ENCODING-ERROR"
990                "C-STRING-ENCODING-ERROR" "C-STRING-ENCODING-ERROR-EXTERNAL-FORMAT"
991                "C-STRING-DECODING-ERROR" "C-STRING-DECODING-ERROR-EXTERNAL-FORMAT"
992                "ATTEMPT-RESYNC" "FORCE-END-OF-FILE"
993                "READ-UNREADABLE-REPLACEMENT"
994
995
996                ;; bootstrapping magic, to make things happen both in
997                ;; the cross-compilation host compiler's environment and
998                ;; in the cross-compiler's environment
999                "DEF!CONSTANT" "DEF!MACRO" "DEF!METHOD" "DEF!STRUCT" "DEF!TYPE"
1000
1001                ;; stuff for hinting to the compiler
1002                "NAMED-LAMBDA"
1003
1004                ;; other variations on DEFFOO stuff useful for bootstrapping
1005                ;; and cross-compiling
1006                "DEFMACRO-MUNDANELY"
1007                "DEFCONSTANT-EQX"
1008                "DEFINE-UNSUPPORTED-FUN"
1009
1010                ;; messing with PATHNAMEs
1011                "MAKE-TRIVIAL-DEFAULT-PATHNAME"
1012                "PHYSICALIZE-PATHNAME"
1013                "SANE-DEFAULT-PATHNAME-DEFAULTS"
1014                "SBCL-HOMEDIR-PATHNAME"
1015                "SIMPLIFY-NAMESTRING"
1016
1017                "*N-BYTES-FREED-OR-PURIFIED*"
1018
1019                ;; Deprecating stuff
1020                "DEFINE-DEPRECATED-FUNCTION"
1021                "EARLY-DEPRECATION-WARNING"
1022                "LATE-DEPRECATION-WARNING"
1023                "FINAL-DEPRECATION-WARNING"
1024                "DEPRECATION-WARNING"
1025                "DEPRECATION-ERROR"
1026
1027                ;; miscellaneous non-standard but handy user-level functions..
1028                "ASSQ" "DELQ" "MEMQ" "POSQ" "NEQ"
1029                "ADJUST-LIST"
1030                "%FIND-PACKAGE-OR-LOSE" "FIND-UNDELETED-PACKAGE-OR-LOSE"
1031                "SANE-PACKAGE"
1032                "MAYBE-CYCLIC-P"
1033                "COMPOUND-OBJECT-P"
1034                "SWAPPED-ARGS-FUN"
1035                "AND/TYPE" "NOT/TYPE"
1036                "ANY/TYPE" "EVERY/TYPE"
1037                "EQUAL-BUT-NO-CAR-RECURSION"
1038                "TYPE-BOUND-NUMBER"
1039                "CONSTANTLY-T" "CONSTANTLY-NIL" "CONSTANTLY-0"
1040                "PSXHASH"
1041                "%BREAK"
1042                "NTH-BUT-WITH-SANE-ARG-ORDER"
1043                "BIT-VECTOR-="
1044                "READ-EVALUATED-FORM"
1045                "MAKE-UNPRINTABLE-OBJECT"
1046                "POWER-OF-TWO-CEILING"
1047                "PRINT-NOT-READABLE-ERROR"
1048
1049                ;; ..and macros..
1050                "COLLECT"
1051                "DO-ANONYMOUS" "DOHASH" "DOVECTOR"
1052                "NAMED-LET"
1053                "ONCE-ONLY"
1054                "DEFENUM"
1055                "DEFPRINTER"
1056                "AVER" "ENFORCE-TYPE"
1057                "DX-FLET" "DX-LET"
1058                "AWHEN" "ACOND" "IT"
1059                "BINDING*"
1060                "!DEF-BOOLEAN-ATTRIBUTE"
1061                "WITH-REBOUND-IO-SYNTAX"
1062                "WITH-SANE-IO-SYNTAX"
1063                "WITH-PROGRESSIVE-TIMEOUT"
1064
1065                ;; ..and CONDITIONs..
1066                "BUG"
1067                "UNSUPPORTED-OPERATOR"
1068
1069                "BOOTSTRAP-PACKAGE-NAME"
1070                "BOOTSTRAP-PACKAGE-NOT-FOUND"
1071                "DEBOOTSTRAP-PACKAGE"
1072
1073                "REFERENCE-CONDITION" "REFERENCE-CONDITION-REFERENCES"
1074                "*PRINT-CONDITION-REFERENCES*"
1075
1076                "DUPLICATE-DEFINITION" "DUPLICATE-DEFINITION-NAME"
1077                "PACKAGE-AT-VARIANCE" "ARRAY-INITIAL-ELEMENT-MISMATCH"
1078                "TYPE-WARNING" "TYPE-STYLE-WARNING"
1079                "LOCAL-ARGUMENT-MISMATCH"
1080                "FORMAT-ARGS-MISMATCH" "FORMAT-TOO-FEW-ARGS-WARNING"
1081                "FORMAT-TOO-MANY-ARGS-WARNING" "EXTENSION-FAILURE"
1082                "STRUCTURE-INITARG-NOT-KEYWORD" "CONSTANT-MODIFIED"
1083
1084                ;; ..and DEFTYPEs..
1085                "MAX-HASH" "HASH"
1086                "INDEX" "LOAD/STORE-INDEX"
1087                "SIGNED-BYTE-WITH-A-BITE-OUT"
1088                "UNSIGNED-BYTE-WITH-A-BITE-OUT"
1089                "SFUNCTION" "UNSIGNED-BYTE*"
1090                "CONSTANT-DISPLACEMENT"
1091                ;; ..and type predicates
1092                "INSTANCEP"
1093                "DOUBLE-FLOAT-P"
1094                "LOGICAL-PATHNAME-P"
1095                "LONG-FLOAT-P"
1096                "SHORT-FLOAT-P"
1097                "SINGLE-FLOAT-P"
1098                "FIXNUMP"
1099                "BIGNUMP"
1100                "RATIOP"
1101
1102                ;; encapsulation
1103                "ARG-LIST"
1104                "BASIC-DEFINITION"
1105                "ENCAPSULATE" "ENCAPSULATED-P"
1106                "UNENCAPSULATE"
1107
1108                ;; various CHAR-CODEs
1109                "BACKSPACE-CHAR-CODE" "BELL-CHAR-CODE" "ESCAPE-CHAR-CODE"
1110                "FORM-FEED-CHAR-CODE" "LINE-FEED-CHAR-CODE"
1111                "RETURN-CHAR-CODE" "RUBOUT-CHAR-CODE" "TAB-CHAR-CODE"
1112
1113                ;; symbol-hacking idioms
1114                "GENSYMIFY" "KEYWORDICATE" "SYMBOLICATE"
1115
1116                ;; certainly doesn't belong in public extensions
1117                ;; FIXME: maybe belongs in %KERNEL with other typesystem stuff?
1118                "CONSTANT-ARG"
1119
1120                ;; various internal defaults
1121                "DEFAULT-INIT-CHAR" "*DEFAULT-INIT-CHAR-FORM*"
1122                "*LOAD-SOURCE-DEFAULT-TYPE*" "BASE-CHAR-CODE-LIMIT"
1123
1124                ;; hash caches
1125                "DEFINE-HASH-CACHE"
1126                "DEFUN-CACHED"
1127                "DEFINE-CACHED-SYNONYM"
1128                "DROP-ALL-HASH-CACHES"
1129
1130                ;; time
1131                "FORMAT-DECODED-TIME"
1132                "FORMAT-UNIVERSAL-TIME"
1133
1134                ;; indenting
1135                "MAKE-INDENTING-STREAM"
1136
1137                ;; stream commands, used by the debugger
1138                "GET-STREAM-COMMAND" "MAKE-STREAM-COMMAND" "STREAM-COMMAND"
1139                "STREAM-COMMAND-ARGS" "STREAM-COMMAND-NAME" "STREAM-COMMAND-P"
1140
1141                ;; used for FORMAT tilde paren
1142                "MAKE-CASE-FROB-STREAM"
1143
1144                ;; helpers for C library calls
1145                "STRERROR" "SIMPLE-PERROR"
1146
1147                ;; debuggers' little helpers
1148                #!+sb-show "*/SHOW*"
1149                #!+sb-show "HEXSTR"
1150                "/SHOW"  "/NOSHOW"
1151                "/XHOW"  "/NOXHOW"
1152                "/SHOW0" "/NOSHOW0"
1153                "/HEXSTR" "/NOHEXSTR"
1154                "/PRIMITIVE-PRINT" "/NO-PRIMITIVE-PRINT"
1155
1156                ;; cross-compilation bootstrap hacks which turn into
1157                ;; placeholders in a target system
1158                "UNCROSS"
1159
1160                ;; might as well be shared among the various files which
1161                ;; need it:
1162                "*EOF-OBJECT*"
1163
1164                ;; allocation to static space
1165                "MAKE-STATIC-VECTOR"
1166
1167                ;; alien interface utilities
1168                "C-STRINGS->STRING-LIST"
1169
1170                ;; misc. utilities used internally
1171                "DEFINE-FUNCTION-NAME-SYNTAX" "VALID-FUNCTION-NAME-P" ; should be SB!EXT?
1172                "LEGAL-FUN-NAME-P" "LEGAL-FUN-NAME-OR-TYPE-ERROR"
1173                "FUN-NAME-BLOCK-NAME"
1174                "FUN-NAME-INLINE-EXPANSION"
1175                "LISTEN-SKIP-WHITESPACE"
1176                "PACKAGE-INTERNAL-SYMBOL-COUNT" "PACKAGE-EXTERNAL-SYMBOL-COUNT"
1177                "PARSE-BODY" "PARSE-LAMBDA-LIST" "PARSE-LAMBDA-LIST-LIKE-THING"
1178                "PROPER-LIST-OF-LENGTH-P"
1179                "LIST-OF-LENGTH-AT-LEAST-P"
1180                "LIST-WITH-LENGTH-P"
1181                "SINGLETON-P"
1182                "READ-SEQUENCE-OR-DIE"
1183                "RENAME-KEY-ARGS"
1184                "MISSING-ARG"
1185                "FEATUREP"
1186                "FLUSH-STANDARD-OUTPUT-STREAMS"
1187                "WITH-UNIQUE-NAMES" "MAKE-GENSYM-LIST"
1188                "ABOUT-TO-MODIFY-SYMBOL-VALUE"
1189                "SELF-EVALUATING-P"
1190                "PRINT-PRETTY-ON-STREAM-P"
1191                "ARRAY-READABLY-PRINTABLE-P"
1192                "LOOKS-LIKE-NAME-OF-SPECIAL-VAR-P"
1193                "POSITIVE-PRIMEP"
1194                "EVAL-IN-LEXENV"
1195                "SIMPLE-EVAL-IN-LEXENV"
1196                "DEBUG-NAMIFY"
1197                "FORCE" "DELAY" "PROMISE-READY-P"
1198                "FIND-RESTART-OR-CONTROL-ERROR"
1199                "LOAD-AS-SOURCE"
1200
1201                ;; These could be moved back into SB!EXT if someone has
1202                ;; compelling reasons, but hopefully we can get by
1203                ;; without supporting them, at least not as publicly
1204                ;; accessible things with fixed interfaces.
1205                "GET-FLOATING-POINT-MODES"
1206                "SET-FLOATING-POINT-MODES"
1207                "WITH-FLOAT-TRAPS-MASKED"
1208
1209                ;; compatibility hacks for old-style CMU CL data formats
1210                "UNIX-ENVIRONMENT-CMUCL-FROM-SBCL"
1211                "UNIX-ENVIRONMENT-SBCL-FROM-CMUCL"
1212
1213                ;; a sort of quasi-unbound tag for use in hash tables
1214                "+EMPTY-HT-SLOT+"
1215
1216                ;; low-level i/o stuff
1217                "DONE-WITH-FAST-READ-CHAR"
1218                "FAST-READ-BYTE"
1219                "FAST-READ-BYTE-REFILL"
1220                "FAST-READ-CHAR"
1221                "FAST-READ-CHAR-REFILL"
1222                "FAST-READ-S-INTEGER"
1223                "FAST-READ-U-INTEGER"
1224                "FAST-READ-VAR-U-INTEGER"
1225                "FILE-NAME"
1226                "INTERN*"
1227                "WITH-FAST-READ-BYTE"
1228                "PREPARE-FOR-FAST-READ-CHAR"
1229
1230                ;; reflection of our backquote implementation that the
1231                ;; pprinter needs
1232                "*BACKQ-TOKENS*"
1233
1234                ;; hackery to help set up for cold init
1235                "!BEGIN-COLLECTING-COLD-INIT-FORMS"
1236                "!COLD-INIT-FORMS"
1237                "COLD-FSET"
1238                "!DEFUN-FROM-COLLECTED-COLD-INIT-FORMS"
1239
1240                ;; catch tags
1241                "TOPLEVEL-CATCHER"
1242
1243                ;; hooks for contrib/ stuff we're insufficiently sure
1244                ;; about to add to SB!EXT
1245                "*REPL-PROMPT-FUN*"
1246                "*REPL-READ-FORM-FUN*"))
1247
1248    ;; FIXME: This package is awfully huge. It'd probably be good to
1249    ;; split it. There's at least one natural way to split it: the
1250    ;; implementation of the Lisp type system (e.g. TYPE-INTERSECTION and
1251    ;; SPECIFIER-TYPE) could move to a separate package SB!TYPE. (There's
1252    ;; lots of stuff which currently uses the SB!KERNEL package which
1253    ;; doesn't actually use the type system stuff.) And maybe other
1254    ;; possible splits too:
1255    ;;   * Pull GC stuff (*GC-INHIBIT*, *GC-PENDING*, etc.)
1256    ;;     out into SB-GC.
1257    ;;   * Pull special case implementations of sequence functions (e.g.
1258    ;;     %MAP-TO-LIST-ARITY-1 and %FIND-POSITION-IF-NOT) and
1259    ;;     other sequence function implementation grot into SB-SEQ.
1260    ;;   * Pull all the math stuff (%ACOS, %COSH, WORD-LOGICAL-AND...)
1261    ;;     into SB-MATH.
1262    ;;   * Pull all the array stuff (%ARRAY-DATA-VECTOR, %RAW-REF-LONG,
1263    ;;     WITH-ARRAY-DATA, ALLOCATE-VECTOR, HAIRY-DATA-VECTOR-REF...)
1264    ;;     into SB-ARRAY.
1265    ;;   * Pull all the streams stuff out into SB-STREAM.
1266    ;;   * Pull all the OBJECT-NOT-FOO symbols out. Maybe we could even
1267    ;;     figure out a way to stop exporting them? Failing that,
1268    ;;     they could be in SB-INTERR.
1269    #s(sb-cold:package-data
1270       :name "SB!KERNEL"
1271       :doc
1272       "private: Theoretically this 'hides state and types used for package
1273 integration' (said CMU CL architecture.tex) and that probably was and
1274 is a good idea, but see SB-SYS re. blurring of boundaries."
1275       :use ("CL" "SB!ALIEN" "SB!ALIEN-INTERNALS" "SB!BIGNUM"
1276                  "SB!EXT" "SB!FASL" "SB!INT" "SB!SYS" "SB!GRAY")
1277       :reexport ("DEF!STRUCT" "DEF!MACRO")
1278       :export ("%ACOS"
1279                "%ACOSH"
1280                "%ADJOIN"
1281                "%ADJOIN-EQ"
1282                "%ADJOIN-KEY"
1283                "%ADJOIN-KEY-EQ"
1284                "%ADJOIN-KEY-TEST"
1285                "%ADJOIN-KEY-TEST-NOT"
1286                "%ADJOIN-TEST"
1287                "%ADJOIN-TEST-NOT"
1288                "%ARRAY-AVAILABLE-ELEMENTS" "%ARRAY-DATA-VECTOR"
1289                "%ARRAY-DIMENSION" "%ARRAY-DISPLACED-P"
1290                "%ARRAY-DISPLACED-FROM"
1291                "%ARRAY-DISPLACEMENT" "%ARRAY-FILL-POINTER"
1292                "%ARRAY-FILL-POINTER-P" "%ARRAY-RANK"
1293                #!+(or x86 x86-64 ppc)
1294                "%ARRAY-ATOMIC-INCF/WORD"
1295                "%ASSOC"
1296                "%ASSOC-EQ"
1297                "%ASSOC-IF"
1298                "%ASSOC-IF-KEY"
1299                "%ASSOC-IF-NOT"
1300                "%ASSOC-IF-NOT-KEY"
1301                "%ASSOC-KEY"
1302                "%ASSOC-KEY-EQ"
1303                "%ASSOC-KEY-TEST"
1304                "%ASSOC-KEY-TEST-NOT"
1305                "%ASSOC-TEST"
1306                "%ASSOC-TEST-NOT"
1307                "%ASIN" "%ASINH"
1308                "%ATAN" "%ATAN2" "%ATANH"
1309                "%CALLER-FRAME"
1310                "%CALLER-PC"
1311                "%CEILING"
1312                "%CHECK-BOUND"
1313                "%CHECK-GENERIC-SEQUENCE-BOUNDS"
1314                "%CHECK-VECTOR-SEQUENCE-BOUNDS"
1315                "%COMPARE-AND-SWAP-CAR"
1316                "%COMPARE-AND-SWAP-CDR"
1317                "%COMPARE-AND-SWAP-INSTANCE-REF"
1318                "%COMPARE-AND-SWAP-SVREF"
1319                "%COMPARE-AND-SWAP-SYMBOL-PLIST"
1320                "%COMPARE-AND-SWAP-SYMBOL-VALUE"
1321                "%CONCATENATE-TO-BASE-STRING"
1322                "%CONCATENATE-TO-STRING"
1323                "%COS" "%COS-QUICK"
1324                "%COSH" "%DATA-VECTOR-AND-INDEX" "%DEPOSIT-FIELD"
1325                "%DOUBLE-FLOAT" "%DPB" "%EQL"
1326                "%EXIT"
1327                "%EXP" "%EXPM1"
1328                "%FLOOR"
1329                "%FIND-POSITION"
1330                "%FIND-POSITION-VECTOR-MACRO" "%FIND-POSITION-IF"
1331                "%FIND-POSITION-IF-VECTOR-MACRO" "%FIND-POSITION-IF-NOT"
1332                "%FIND-POSITION-IF-NOT-VECTOR-MACRO"
1333                "%HYPOT" "%LDB" "%LOG" "%LOGB" "%LOG10"
1334                "%LAST0"
1335                "%LAST1"
1336                "%LASTN/FIXNUM"
1337                "%LASTN/BIGNUM"
1338                "%LOG1P"
1339                #!+long-float "%LONG-FLOAT"
1340                "%MAKE-COMPLEX" "%MAKE-FUNCALLABLE-INSTANCE"
1341                "%MAKE-FUNCALLABLE-STRUCTURE-INSTANCE-ALLOCATOR"
1342                "%MAKE-RATIO" "%MAKE-LISP-OBJ"
1343                "%MAKE-INSTANCE"
1344                "%MAKE-STRUCTURE-INSTANCE"
1345                "%MAKE-STRUCTURE-INSTANCE-ALLOCATOR"
1346                "%MAP" "%MAP-TO-SIMPLE-VECTOR-ARITY-1"
1347                "%MAP-TO-LIST-ARITY-1" "%MAP-TO-NIL-ON-SEQUENCE"
1348                "%MAP-TO-NIL-ON-SIMPLE-VECTOR" "%MAP-TO-NIL-ON-VECTOR"
1349                "%MASK-FIELD"
1350                "%MEMBER"
1351                "%MEMBER-EQ"
1352                "%MEMBER-IF"
1353                "%MEMBER-IF-KEY"
1354                "%MEMBER-IF-NOT"
1355                "%MEMBER-IF-NOT-KEY"
1356                "%MEMBER-KEY"
1357                "%MEMBER-KEY-EQ"
1358                "%MEMBER-KEY-TEST"
1359                "%MEMBER-KEY-TEST-NOT"
1360                "%MEMBER-TEST"
1361                "%MEMBER-TEST-NOT"
1362                "%MULTIPLY-HIGH"
1363                "%NEGATE" "%POW"
1364                "%OTHER-POINTER-WIDETAG"
1365                "%PUTHASH"
1366                "%RASSOC"
1367                "%RASSOC-EQ"
1368                "%RASSOC-IF"
1369                "%RASSOC-IF-KEY"
1370                "%RASSOC-IF-NOT"
1371                "%RASSOC-IF-NOT-KEY"
1372                "%RASSOC-KEY"
1373                "%RASSOC-KEY-EQ"
1374                "%RASSOC-KEY-TEST"
1375                "%RASSOC-KEY-TEST-NOT"
1376                "%RASSOC-TEST"
1377                "%RASSOC-TEST-NOT"
1378                "%RAW-BITS" "%RAW-BITS-WITH-OFFSET" "%VECTOR-RAW-BITS"
1379                "%RAW-REF-COMPLEX-DOUBLE" "%RAW-REF-COMPLEX-LONG"
1380                "%RAW-REF-COMPLEX-SINGLE" "%RAW-REF-DOUBLE"
1381                "%RAW-REF-LONG" "%RAW-REF-SINGLE"
1382                "%RAW-SET-COMPLEX-DOUBLE" "%RAW-SET-COMPLEX-LONG"
1383                "%RAW-SET-COMPLEX-SINGLE" "%RAW-SET-DOUBLE"
1384                "%RAW-SET-LONG" "%RAW-SET-SINGLE" "%SCALB" "%SCALBN"
1385                #!+(or x86 x86-64 ppc)
1386                "%RAW-INSTANCE-ATOMIC-INCF/WORD"
1387                "%RAW-INSTANCE-REF/WORD" "%RAW-INSTANCE-SET/WORD"
1388                "%RAW-INSTANCE-REF/SINGLE" "%RAW-INSTANCE-SET/SINGLE"
1389                "%RAW-INSTANCE-REF/DOUBLE" "%RAW-INSTANCE-SET/DOUBLE"
1390                "%RAW-INSTANCE-REF/COMPLEX-SINGLE"
1391                "%RAW-INSTANCE-SET/COMPLEX-SINGLE"
1392                "%RAW-INSTANCE-REF/COMPLEX-DOUBLE"
1393                "%RAW-INSTANCE-SET/COMPLEX-DOUBLE"
1394                "%SET-ARRAY-DIMENSION" "%SET-FUNCALLABLE-INSTANCE-INFO"
1395                "%SET-RAW-BITS" "%SET-RAW-BITS-WITH-OFFSET"
1396                "%SET-VECTOR-RAW-BITS"
1397                "%SET-SAP-REF-16" "%SET-SAP-REF-32" "%SET-SAP-REF-64"
1398                "%SET-SAP-REF-WORD" "%SET-SAP-REF-8" "%SET-SAP-REF-DOUBLE"
1399                "%SET-SAP-REF-LISPOBJ" "%SET-SAP-REF-LONG" "%SET-SAP-REF-SAP"
1400                "%SET-SAP-REF-SINGLE" "%SET-SIGNED-SAP-REF-16"
1401                "%SET-SIGNED-SAP-REF-32" "%SET-SIGNED-SAP-REF-64"
1402                "%SET-SIGNED-SAP-REF-WORD"
1403                "%SET-SIGNED-SAP-REF-8" "%SET-STACK-REF"
1404                "%SET-SYMBOL-HASH"
1405                "%SIN" "%SIN-QUICK" "%SINGLE-FLOAT"
1406                "%SINH" "%SQRT" "%SXHASH-SIMPLE-STRING"
1407                "%SXHASH-SIMPLE-SUBSTRING" "%TAN" "%TAN-QUICK" "%TANH"
1408                "%UNARY-ROUND"
1409                "%UNARY-TRUNCATE"
1410                "%UNARY-TRUNCATE/SINGLE-FLOAT"
1411                "%UNARY-TRUNCATE/DOUBLE-FLOAT"
1412                "%UNARY-FTRUNCATE"
1413                "%WITH-ARRAY-DATA"
1414                "%WITH-ARRAY-DATA/FP"
1415                "%WITH-ARRAY-DATA-MACRO"
1416                "*APPROXIMATE-NUMERIC-UNIONS*"
1417                "*CURRENT-LEVEL-IN-PRINT*"
1418                "*EMPTY-TYPE*"
1419                "*EVAL-CALLS*"
1420                "*GC-INHIBIT*" "*GC-PENDING*"
1421                #!+sb-thread "*STOP-FOR-GC-PENDING*"
1422                "*UNIVERSAL-TYPE*"
1423                "*UNIVERSAL-FUN-TYPE*" "*UNPARSE-FUN-TYPE-SIMPLIFY*"
1424                "*WILD-TYPE*" "WORD-LOGICAL-AND" "WORD-LOGICAL-ANDC1"
1425                "WORD-LOGICAL-ANDC2" "WORD-LOGICAL-EQV"
1426                "WORD-LOGICAL-NAND" "WORD-LOGICAL-NOR" "WORD-LOGICAL-NOT"
1427                "WORD-LOGICAL-OR" "WORD-LOGICAL-ORC1" "WORD-LOGICAL-ORC2"
1428                "WORD-LOGICAL-XOR" "ALIEN-TYPE-TYPE"
1429                "ALIEN-TYPE-TYPE-ALIEN-TYPE" "ALIEN-TYPE-TYPE-P"
1430                "ALLOCATE-VECTOR" "ALLOCATE-STATIC-VECTOR"
1431                "ASSERT-SYMBOL-HOME-PACKAGE-UNLOCKED"
1432                "PROGRAM-ASSERT-SYMBOL-HOME-PACKAGE-UNLOCKED"
1433                "DISABLED-PACKAGE-LOCKS"
1434                "WITH-SINGLE-PACKAGE-LOCKED-ERROR"
1435                "PACKAGE-ERROR-FORMAT-ARGUMENTS"
1436                "PACKAGE-ERROR-FORMAT-CONTROL" "ALWAYS-SUBTYPEP"
1437                "ARGS-TYPE" "ARGS-TYPE-ALLOWP" "ARGS-TYPE-KEYP"
1438                "ARGS-TYPE-KEYWORDS" "ARGS-TYPE-OPTIONAL" "ARGS-TYPE-P"
1439                "ARGS-TYPE-REQUIRED" "ARGS-TYPE-REST" "ARRAY-HEADER-P"
1440                "ARRAY-TYPE" "ARRAY-TYPE-COMPLEXP"
1441                "ARRAY-TYPE-DIMENSIONS" "ARRAY-TYPE-ELEMENT-TYPE"
1442                "ARRAY-TYPE-P" "ARRAY-TYPE-SPECIALIZED-ELEMENT-TYPE"
1443                "ASH-INDEX" "ASSERT-ERROR"
1444                #!+sb-unicode "BASE-CHAR-P"
1445                "BASE-STRING-P"
1446                "BINDING-STACK-POINTER-SAP" "BIT-INDEX"
1447                "BOGUS-ARG-TO-VALUES-LIST-ERROR" "BOOLE-CODE"
1448                "BOUNDING-INDICES-BAD-ERROR" "BYTE-SPECIFIER" "%BYTE-BLT"
1449                "CALLABLE" "CASE-BODY-ERROR"
1450                "CHARACTER-SET" "CHARACTER-SET-TYPE"
1451                "CHARACTER-SET-TYPE-PAIRS"
1452                #!+sb-unicode "CHARACTER-STRING-P"
1453                "CHARPOS"
1454                "CHECK-FOR-CIRCULARITY" "CHECK-TYPE-ERROR" "CLOSED-FLAME"
1455                "CODE-COMPONENT" "CODE-COMPONENT-P" "CODE-DEBUG-INFO"
1456                "CODE-HEADER-REF" "CODE-HEADER-SET" "CODE-INSTRUCTIONS"
1457                "COERCE-TO-FUN" "COERCE-TO-LEXENV" "COERCE-TO-LIST"
1458                "COERCE-TO-VALUES" "COERCE-TO-VECTOR"
1459                "*COLD-INIT-COMPLETE-P*" "COMPLEX-DOUBLE-FLOAT-P"
1460                "COMPLEX-FLOAT-P"
1461                #!+long-float "COMPLEX-LONG-FLOAT-P"
1462                "COMPLEX-RATIONAL-P" "COMPLEX-SINGLE-FLOAT-P"
1463                "COMPLEX-VECTOR-P" "COMPOUND-TYPE" "COMPOUND-TYPE-P"
1464                "COMPOUND-TYPE-TYPES" "CONS-TYPE" "CONS-TYPE-CAR-TYPE"
1465                "CONS-TYPE-CDR-TYPE" "CONS-TYPE-P" "CONSED-SEQUENCE"
1466                "CONSTANT" "CONSTANT-TYPE" "CONSTANT-TYPE-P"
1467                "CONSTANT-TYPE-TYPE" "CONTAINING-INTEGER-TYPE"
1468                "CONTROL-STACK-POINTER-SAP" "COPY-BYTE-VECTOR-TO-SYSTEM-AREA"
1469                "CSUBTYPEP" "CTYPE" "TYPE-HASH-VALUE" "CTYPE-OF"
1470                "CTYPE-P" "CTYPEP" "CURRENT-FP" "CURRENT-SP"
1471                "CURRENT-DYNAMIC-SPACE-START"
1472                "DATA-VECTOR-REF" "DATA-VECTOR-REF-WITH-OFFSET"
1473                "DATA-VECTOR-SET" "DATA-VECTOR-SET-WITH-OFFSET"
1474                "DECLARATION-TYPE-CONFLICT-ERROR"
1475                "DECODE-DOUBLE-FLOAT"
1476                #!+long-float "DECODE-LONG-FLOAT"
1477                "DECODE-SINGLE-FLOAT"
1478                "DEFINE-STRUCTURE-SLOT-ADDRESSOR"
1479                "DEFINED-FTYPE-MATCHES-DECLARED-FTYPE-P"
1480                "!DEFSTRUCT-WITH-ALTERNATE-METACLASS" "DESCEND-INTO"
1481                "DIVISION-BY-ZERO-ERROR" "DOUBLE-FLOAT-EXPONENT"
1482                "DOUBLE-FLOAT-HIGH-BITS" "DOUBLE-FLOAT-INT-EXPONENT"
1483                "DOUBLE-FLOAT-LOW-BITS" "DOUBLE-FLOAT-SIGNIFICAND"
1484                "FLOAT-WAIT" "DYNAMIC-SPACE-FREE-POINTER" "DYNAMIC-USAGE"
1485                "EFFECTIVE-FIND-POSITION-TEST"
1486                "EFFECTIVE-FIND-POSITION-KEY" "ERROR-NUMBER-OR-LOSE"
1487                "EXTENDED-CHAR-P" "EXTERNAL-FORMAT-DESIGNATOR"
1488                "FDEFINITION-OBJECT"
1489                "FDOCUMENTATION" "FILENAME"
1490                "FIND-AND-INIT-OR-CHECK-LAYOUT"
1491                "FIND-DEFSTRUCT-DESCRIPTION"
1492                "FLOAT-EXPONENT"
1493                "FLOAT-FORMAT-DIGITS" "FLOAT-FORMAT-NAME"
1494                "FLOAT-FORMAT-MAX" "FLOAT-INT-EXPONENT"
1495                "FLOATING-POINT-EXCEPTION" "FORM" "FORMAT-CONTROL"
1496                "*FREE-INTERRUPT-CONTEXT-INDEX*" "FUNCALLABLE-INSTANCE-P"
1497                "FUN-CODE-HEADER" "FUN-TYPE" "FUN-TYPE-ALLOWP"
1498                "FUN-TYPE-KEYP" "FUN-TYPE-KEYWORDS" "FUN-TYPE-NARGS"
1499                "FUN-TYPE-OPTIONAL" "FUN-TYPE-P" "FUN-TYPE-REQUIRED"
1500                "FUN-TYPE-REST" "FUN-TYPE-RETURNS" "FUN-TYPE-WILD-ARGS"
1501                "FUN-WORD-OFFSET" "GENERALIZED-BOOLEAN"
1502                "GET-CLOSURE-LENGTH" "GET-HEADER-DATA"
1503                "GET-LISP-OBJ-ADDRESS" "LOWTAG-OF" "WIDETAG-OF"
1504                "HAIRY-DATA-VECTOR-REF"
1505                "HAIRY-DATA-VECTOR-REF/CHECK-BOUNDS"  "HAIRY-DATA-VECTOR-SET"
1506                "HAIRY-DATA-VECTOR-SET/CHECK-BOUNDS""HAIRY-TYPE"
1507                "HAIRY-TYPE-CHECK-TEMPLATE-NAME" "HAIRY-TYPE-SPECIFIER"
1508                "HANDLE-CIRCULARITY" "HOST" "IGNORE-IT" "ILL-BIN"
1509                "ILL-BOUT" "ILL-IN" "ILL-OUT" "INDEX-OR-MINUS-1"
1510                "INDEX-TOO-LARGE-ERROR" "*!INITIAL-ASSEMBLER-ROUTINES*"
1511                "*!INITIAL-DEBUG-SOURCES*"
1512                "*!INITIAL-FDEFN-OBJECTS*" "*!INITIAL-FOREIGN-SYMBOLS*"
1513                "*!INITIAL-LAYOUTS*" "*!INITIAL-SYMBOLS*"
1514                "INTEGER-DECODE-DOUBLE-FLOAT"
1515                #!+long-float "INTEGER-DECODE-LONG-FLOAT"
1516                "INTEGER-DECODE-SINGLE-FLOAT" "INTERNAL-ERROR"
1517                #!+win32 "HANDLE-WIN32-EXCEPTION"
1518                "INTERNAL-TIME" "INTERSECTION-TYPE" "INTERSECTION-TYPE-P"
1519                "INTERSECTION-TYPE-TYPES" "INVALID-ARG-COUNT-ERROR"
1520                "INVALID-UNWIND-ERROR"
1521                "IRRATIONAL" "JUST-DUMP-IT-NORMALLY" "KEY-INFO"
1522                "KEY-INFO-NAME" "KEY-INFO-P" "KEY-INFO-TYPE"
1523                "LAYOUT-DEPTHOID" "LAYOUT-INVALID-ERROR"
1524                "LAYOUT-N-UNTAGGED-SLOTS" "LAYOUT-FOR-STD-CLASS-P"
1525                "LAYOUT-SLOT-TABLE"
1526                #!+(or x86-64 x86) "%LEA"
1527                "LEXENV" "LEXENV-DESIGNATOR" "LINE-LENGTH"
1528                "LIST-COPY-SEQ*"
1529                "LIST-FILL*"
1530                "LIST-SUBSEQ*"
1531                "ANSI-STREAM"
1532                "ANSI-STREAM-BIN" "ANSI-STREAM-BOUT" "ANSI-STREAM-CLOSE"
1533                "ANSI-STREAM-ELEMENT-TYPE"
1534                "ANSI-STREAM-FILE-POSITION"
1535                "ANSI-STREAM-IN"
1536                "ANSI-STREAM-IN-BUFFER" "ANSI-STREAM-IN-INDEX"
1537                "ANSI-STREAM-INPUT-STREAM-P" "ANSI-STREAM-MISC"
1538                "ANSI-STREAM-N-BIN" "ANSI-STREAM-OPEN-STREAM-P"
1539                "ANSI-STREAM-OUT" "ANSI-STREAM-SOUT"
1540                "ANSI-STREAM-OUTPUT-STREAM-P"
1541                "COMPLEX-VECTOR"
1542                "LIST-TO-VECTOR*"
1543                "LOGICAL-HOST" "LOGICAL-HOST-DESIGNATOR"
1544                #!+long-float "LONG-FLOAT-EXPONENT"
1545                #!+long-float "LONG-FLOAT-EXP-BITS"
1546                #!+long-float "LONG-FLOAT-HIGH-BITS"
1547                #!+long-float "LONG-FLOAT-LOW-BITS"
1548                #!+long-float "LONG-FLOAT-MID-BITS"
1549                "LONG-WORDS" "LRA" "LRA-CODE-HEADER" "LRA-P"
1550                "MAKE-ALIEN-TYPE-TYPE" "MAKE-ARGS-TYPE"
1551                "MAKE-ARRAY-HEADER" "MAKE-ARRAY-TYPE" "MAKE-CONS-TYPE"
1552                "MAKE-DOUBLE-FLOAT" "MAKE-FUN-TYPE" "MAKE-KEY-INFO"
1553                "MAKE-LISP-OBJ"
1554                #!+long-float "MAKE-LONG-FLOAT"
1555                "MAKE-MEMBER-TYPE" "MAKE-NAMED-TYPE" "MAKE-NULL-LEXENV"
1556                "MAKE-NUMERIC-TYPE"
1557                "MAKE-SINGLE-FLOAT" "MAKE-SPECIALIZABLE-ARRAY"
1558                "MAKE-UNPORTABLE-FLOAT"
1559                "MAKE-SHORT-VALUES-TYPE" "MAKE-SINGLE-VALUE-TYPE"
1560                "MAKE-VALUE-CELL" "MAKE-VALUES-TYPE"
1561                "MAPC-MEMBER-TYPE-MEMBERS" "MAPCAR-MEMBER-TYPE-MEMBERS"
1562                "MEMBER-TYPE" "MEMBER-TYPE-MEMBERS" "MEMBER-TYPE-P"
1563                "MEMBER-TYPE-SIZE" "MERGE-BITS"
1564                "MODIFIED-NUMERIC-TYPE"
1565                "MOST-NEGATIVE-EXACTLY-DOUBLE-FLOAT-FIXNUM"
1566                "MOST-NEGATIVE-EXACTLY-SINGLE-FLOAT-FIXNUM"
1567                "MOST-POSITIVE-EXACTLY-DOUBLE-FLOAT-FIXNUM"
1568                "MOST-POSITIVE-EXACTLY-SINGLE-FLOAT-FIXNUM"
1569                "MUTATOR-SELF" "NAMED-TYPE"
1570                "NAMED-TYPE-NAME" "NAMED-TYPE-P" "NATIVE-BYTE-ORDER"
1571                "NEGATE" "NEGATION-TYPE" "NEGATION-TYPE-TYPE"
1572                "NEVER-SUBTYPEP" "NIL-ARRAY-ACCESSED-ERROR"
1573                "NIL-FUN-RETURNED-ERROR" "NOT-<=-ERROR" "NOT-=-ERROR"
1574                "NOT-DUMPED-AT-ALL" "NUMERIC-CONTAGION" "NUMERIC-TYPE"
1575                "NUMERIC-TYPE-CLASS" "NUMERIC-TYPE-COMPLEXP"
1576                "NUMERIC-TYPE-EQUAL" "NUMERIC-TYPE-FORMAT"
1577                "NUMERIC-TYPE-HIGH" "NUMERIC-TYPE-LOW" "NUMERIC-TYPE-P"
1578                "OBJECT-NOT-ARRAY-ERROR" "OBJECT-NOT-CHARACTER-ERROR"
1579                "OBJECT-NOT-BASE-STRING-ERROR" "OBJECT-NOT-BIGNUM-ERROR"
1580                "OBJECT-NOT-BIT-VECTOR-ERROR"
1581                #!+sb-unicode "OBJECT-NOT-CHARACTER-STRING-ERROR"
1582                "OBJECT-NOT-COMPLEX-ERROR"
1583                "OBJECT-NOT-COMPLEX-FLOAT-ERROR"
1584                "OBJECT-NOT-COMPLEX-SINGLE-FLOAT-ERROR"
1585                #!+long-float "OBJECT-NOT-COMPLEX-LONG-FLOAT-ERROR"
1586                "OBJECT-NOT-COMPLEX-DOUBLE-FLOAT-ERROR"
1587                "OBJECT-NOT-COMPLEX-RATIONAL-ERROR"
1588                ;; FIXME: It's confusing using "complex" to mean both
1589                ;; "not on the real number line" and "not of a
1590                ;; SIMPLE-ARRAY nature". Perhaps we could rename all the
1591                ;; uses in the second sense as "hairy" instead?
1592                "OBJECT-NOT-COMPLEX-VECTOR-ERROR" "OBJECT-NOT-CONS-ERROR"
1593                "OBJECT-NOT-DOUBLE-FLOAT-ERROR" "OBJECT-NOT-FIXNUM-ERROR"
1594                "OBJECT-NOT-FLOAT-ERROR" "OBJECT-NOT-FUN-ERROR"
1595                "OBJECT-NOT-INSTANCE-ERROR" "OBJECT-NOT-INTEGER-ERROR"
1596                "OBJECT-NOT-LIST-ERROR"
1597                #!+long-float "OBJECT-NOT-LONG-FLOAT-ERROR"
1598                "OBJECT-NOT-NUMBER-ERROR" "OBJECT-NOT-RATIO-ERROR"
1599                "OBJECT-NOT-RATIONAL-ERROR" "OBJECT-NOT-REAL-ERROR"
1600                "OBJECT-NOT-SAP-ERROR" "OBJECT-NOT-SIGNED-BYTE-32-ERROR"
1601                ;; FIXME: 32/64-bit issues
1602                "OBJECT-NOT-SIGNED-BYTE-64-ERROR"
1603                "OBJECT-NOT-SIMPLE-ARRAY-COMPLEX-DOUBLE-FLOAT-ERROR"
1604                #!+long-float
1605                "OBJECT-NOT-SIMPLE-ARRAY-COMPLEX-LONG-FLOAT-ERROR"
1606                "OBJECT-NOT-SIMPLE-ARRAY-COMPLEX-SINGLE-FLOAT-ERROR"
1607                "OBJECT-NOT-SIMPLE-ARRAY-DOUBLE-FLOAT-ERROR"
1608                "OBJECT-NOT-SIMPLE-ARRAY-ERROR"
1609                #!+long-float "OBJECT-NOT-SIMPLE-ARRAY-LONG-FLOAT-ERROR"
1610                "OBJECT-NOT-SIMPLE-ARRAY-NIL-ERROR"
1611                "OBJECT-NOT-SIMPLE-ARRAY-SINGLE-FLOAT-ERROR"
1612                "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-15-ERROR"
1613                "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-16-ERROR"
1614                "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-2-ERROR"
1615                ;; KLUDGE: 32-bit and 64-bit ports implement a different
1616                ;; set of specialized array types.  Various bits of code
1617                ;; in SBCL assume that symbols connected to the
1618                ;; specialized array types are exported.  But there's not
1619                ;; a good way at this point to know whether the port for
1620                ;; which we're building is 32-bit or 64-bit.  Granted, we
1621                ;; could hardcode the particulars (or even come up with a
1622                ;; special :64BIT feature), but that seems a little
1623                ;; inelegant.  For now, we brute-force the issue by
1624                ;; always exporting all the names required for both
1625                ;; 32-bit and 64-bit ports.  Other bits connected to the
1626                ;; same issue are noted throughout the code below with
1627                ;; the tag "32/64-bit issues".  --njf, 2004-08-09
1628                "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-FIXNUM-ERROR"
1629                "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-31-ERROR"
1630                "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-32-ERROR"
1631                "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-4-ERROR"
1632                ;; FIXME: 32/64-bit issues
1633                "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-63-ERROR"
1634                "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-64-ERROR"
1635                "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-7-ERROR"
1636                "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-8-ERROR"
1637                "OBJECT-NOT-SIMPLE-ARRAY-SIGNED-BYTE-16-ERROR"
1638                "OBJECT-NOT-SIMPLE-ARRAY-FIXNUM-ERROR"
1639                "OBJECT-NOT-SIMPLE-ARRAY-SIGNED-BYTE-32-ERROR"
1640                "OBJECT-NOT-SIMPLE-ARRAY-SIGNED-BYTE-64-ERROR"
1641                "OBJECT-NOT-SIMPLE-ARRAY-SIGNED-BYTE-8-ERROR"
1642                "OBJECT-NOT-SIMPLE-BIT-VECTOR-ERROR"
1643                "OBJECT-NOT-SIMPLE-BASE-STRING-ERROR"
1644                #!+sb-unicode "OBJECT-NOT-SIMPLE-CHARACTER-STRING-ERROR"
1645                "OBJECT-NOT-SIMPLE-STRING-ERROR"
1646                "OBJECT-NOT-SIMPLE-VECTOR-ERROR"
1647                "OBJECT-NOT-SINGLE-FLOAT-ERROR" "OBJECT-NOT-STRING-ERROR"
1648                "OBJECT-NOT-INSTANCE-ERROR" "OBJECT-NOT-SYMBOL-ERROR"
1649                "OBJECT-NOT-TYPE-ERROR"
1650                "OBJECT-NOT-UNSIGNED-BYTE-32-ERROR"
1651                ;; FIXME: 32/64-bit issues
1652                "OBJECT-NOT-UNSIGNED-BYTE-64-ERROR"
1653                "OBJECT-NOT-VECTOR-ERROR"
1654                "OBJECT-NOT-VECTOR-NIL-ERROR"
1655                "OBJECT-NOT-WEAK-POINTER-ERROR"
1656                "ODD-KEY-ARGS-ERROR" "OUTPUT-OBJECT" "OUTPUT-UGLY-OBJECT"
1657                "PACKAGE-DESIGNATOR" "PACKAGE-DOC-STRING"
1658                "PACKAGE-HASHTABLE-SIZE" "PACKAGE-HASHTABLE-FREE"
1659                "PACKAGE-INTERNAL-SYMBOLS" "PACKAGE-EXTERNAL-SYMBOLS"
1660                "PARSE-DEFMACRO" "PARSE-UNKNOWN-TYPE"
1661                "PARSE-UNKNOWN-TYPE-SPECIFIER" "PATHNAME-DESIGNATOR"
1662                "POINTER-HASH"
1663                #!+(or x86 x86-64) "*PSEUDO-ATOMIC-BITS*"
1664                "PUNT-PRINT-IF-TOO-LONG"
1665                "RANDOM-DOCUMENTATION"
1666                "RAW-INSTANCE-SLOTS-EQUALP"
1667                "READER-IMPOSSIBLE-NUMBER-ERROR"
1668                "READER-EOF-ERROR"
1669                "RESTART-DESIGNATOR"
1670                "RUN-PENDING-FINALIZERS"
1671                "SCALE-DOUBLE-FLOAT"
1672                #!+long-float "SCALE-LONG-FLOAT"
1673                "SCALE-SINGLE-FLOAT"
1674                "SCRUB-POWER-CACHE"
1675                "SEQUENCEP" "SEQUENCE-COUNT" "SEQUENCE-END"
1676                "SEQUENCE-OF-CHECKED-LENGTH-GIVEN-TYPE"
1677                "SET-ARRAY-HEADER" "SET-HEADER-DATA" "SHIFT-TOWARDS-END"
1678                "SHIFT-TOWARDS-START" "SHRINK-VECTOR" "%SHRINK-VECTOR"
1679                ;; FIXME: 32/64-bit issues
1680                "SIGNED-BYTE-32-P" "SIGNED-BYTE-64-P"
1681                "SIMPLE-ARRAY-COMPLEX-DOUBLE-FLOAT-P"
1682                #!+long-float "SIMPLE-ARRAY-COMPLEX-LONG-FLOAT-P"
1683                "SIMPLE-ARRAY-COMPLEX-SINGLE-FLOAT-P"
1684                "SIMPLE-ARRAY-DOUBLE-FLOAT-P"
1685                #!+long-float "SIMPLE-ARRAY-LONG-FLOAT-P"
1686                "SIMPLE-ARRAY-NIL-P" "SIMPLE-ARRAY-P"
1687                "SIMPLE-ARRAY-SINGLE-FLOAT-P"
1688                "SIMPLE-ARRAY-UNSIGNED-BYTE-15-P"
1689                "SIMPLE-ARRAY-UNSIGNED-BYTE-16-P"
1690                "SIMPLE-ARRAY-UNSIGNED-BYTE-2-P"
1691                "SIMPLE-ARRAY-UNSIGNED-FIXNUM-P"
1692                "SIMPLE-ARRAY-UNSIGNED-BYTE-31-P"
1693                "SIMPLE-ARRAY-UNSIGNED-BYTE-32-P"
1694                "SIMPLE-ARRAY-UNSIGNED-BYTE-4-P"
1695                "SIMPLE-ARRAY-UNSIGNED-BYTE-63-P"
1696                "SIMPLE-ARRAY-UNSIGNED-BYTE-64-P"
1697                "SIMPLE-ARRAY-UNSIGNED-BYTE-7-P"
1698                "SIMPLE-ARRAY-UNSIGNED-BYTE-8-P"
1699                "SIMPLE-ARRAY-SIGNED-BYTE-16-P"
1700                "SIMPLE-ARRAY-FIXNUM-P"
1701                "SIMPLE-ARRAY-SIGNED-BYTE-32-P"
1702                "SIMPLE-ARRAY-SIGNED-BYTE-64-P"
1703                "SIMPLE-ARRAY-SIGNED-BYTE-8-P" "SIMPLE-BASE-STRING-P"
1704                #!+sb-unicode "SIMPLE-CHARACTER-STRING-P"
1705                "SIMPLE-PACKAGE-ERROR" "SIMPLE-UNBOXED-ARRAY"
1706                "SINGLE-FLOAT-BITS" "SINGLE-FLOAT-EXPONENT"
1707                "SINGLE-FLOAT-INT-EXPONENT" "SINGLE-FLOAT-SIGNIFICAND"
1708                "SINGLE-VALUE-TYPE" "SINGLE-VALUE-SPECIFIER-TYPE"
1709                "SPECIALIZABLE" "SPECIALIZABLE-VECTOR" "SPECIFIER-TYPE"
1710                "STACK-REF" "STREAM-DESIGNATOR" "STRING-DESIGNATOR"
1711                "STRING-FILL*"
1712                "STRUCTURE-RAW-SLOT-TYPE-AND-SIZE" "SUB-GC"
1713                "SYMBOLS-DESIGNATOR"
1714                "%INSTANCE-LENGTH"
1715                "%INSTANCE-REF"
1716                "%INSTANCE-SET"
1717                "SYSTEM-AREA-CLEAR"
1718                "TLS-EXHAUSTED-ERROR"
1719                "TWO-ARG-*" "TWO-ARG-+" "TWO-ARG--" "TWO-ARG-/"
1720                "TWO-ARG-/=" "TWO-ARG-<" "TWO-ARG-<=" "TWO-ARG-="
1721                "TWO-ARG->" "TWO-ARG->=" "TWO-ARG-AND" "TWO-ARG-EQV"
1722                "TWO-ARG-GCD" "TWO-ARG-IOR" "TWO-ARG-LCM" "TWO-ARG-XOR"
1723                "TYPE-*-TO-T"
1724                "TYPE-DIFFERENCE" "TYPE-EXPAND" "TYPE-INTERSECTION"
1725                "TYPE-INTERSECTION2" "TYPE-APPROX-INTERSECTION2"
1726                "TYPE-SINGLETON-P"
1727                "TYPE-SINGLE-VALUE-P" "TYPE-SPECIFIER" "TYPE-UNION"
1728                "TYPE/=" "TYPE=" "TYPES-EQUAL-OR-INTERSECT"
1729                "UNBOUND-SYMBOL-ERROR" "UNBOXED-ARRAY"
1730                "UNDEFINED-FUN-ERROR" "UNION-TYPE" "UNION-TYPE-P"
1731                "UNION-TYPE-TYPES" "UNKNOWN-ERROR"
1732                "UNKNOWN-KEY-ARG-ERROR" "UNKNOWN-TYPE" "UNKNOWN-TYPE-P"
1733                "UNKNOWN-TYPE-SPECIFIER" "UNSEEN-THROW-TAG-ERROR"
1734                ;; FIXME: 32/64-bit issues
1735                "UNSIGNED-BYTE-32-P" "UNSIGNED-BYTE-64-P"
1736                "UPDATE-OBJECT-LAYOUT-OR-INVALID"
1737                "VALUE-CELL-REF" "VALUE-CELL-SET" "VALUES-SPECIFIER-TYPE"
1738                "VALUES-SPECIFIER-TYPE-CACHE-CLEAR" "VALUES-SUBTYPEP"
1739                "VALUES-TYPE" "VALUES-TYPE-IN"
1740                "VALUES-TYPE-INTERSECTION"
1741                "VALUES-TYPE-MIN-VALUE-COUNT" "VALUES-TYPE-MAX-VALUE-COUNT"
1742                "VALUES-TYPE-MAY-BE-SINGLE-VALUE-P" "VALUES-TYPE-OPTIONAL"
1743                "VALUES-TYPE-OUT" "VALUES-TYPE-P" "VALUES-TYPE-REQUIRED"
1744                "VALUES-TYPE-REST" "VALUES-TYPE-UNION"
1745                "VALUES-TYPE-TYPES" "VALUES-TYPES"
1746                "VALUES-TYPES-EQUAL-OR-INTERSECT"
1747
1748                "*VECTOR-WITHOUT-COMPLEX-TYPECODE-INFOS*"
1749                "VECTOR-SINGLE-FLOAT-P" "VECTOR-DOUBLE-FLOAT-P"
1750                "VECTOR-UNSIGNED-BYTE-2-P" "VECTOR-UNSIGNED-BYTE-4-P"
1751                "VECTOR-UNSIGNED-BYTE-7-P" "VECTOR-UNSIGNED-BYTE-8-P"
1752                "VECTOR-UNSIGNED-BYTE-15-P" "VECTOR-UNSIGNED-BYTE-16-P"
1753                "VECTOR-UNSIGNED-FIXNUM-P" "VECTOR-UNSIGNED-BYTE-31-P"
1754                "VECTOR-UNSIGNED-BYTE-32-P"
1755                "VECTOR-UNSIGNED-BYTE-63-P" "VECTOR-UNSIGNED-BYTE-64-P"
1756                "VECTOR-SIGNED-BYTE-8-P" "VECTOR-SIGNED-BYTE-16-P"
1757                "VECTOR-FIXNUM-P" "VECTOR-SIGNED-BYTE-32-P"
1758                "VECTOR-SIGNED-BYTE-64-P" "VECTOR-COMPLEX-SINGLE-FLOAT-P"
1759                "VECTOR-COMPLEX-DOUBLE-FLOAT-P" "VECTOR-T-P"
1760
1761                "VECTOR-NIL-P"
1762                "VECTOR-FILL*"
1763                "VECTOR-SUBSEQ*"
1764                "VECTOR-TO-VECTOR*"
1765                "VECTOR-OF-CHECKED-LENGTH-GIVEN-LENGTH" "WITH-ARRAY-DATA"
1766                "WITH-CIRCULARITY-DETECTION" "WRONG-NUMBER-OF-INDICES-ERROR"
1767                "WITH-WORLD-LOCK"
1768
1769                ;; bit bash fillers (FIXME: 32/64-bit issues)
1770                "UB1-BASH-FILL" "SYSTEM-AREA-UB1-FILL"
1771                "UB2-BASH-FILL" "SYSTEM-AREA-UB2-FILL"
1772                "UB4-BASH-FILL" "SYSTEM-AREA-UB4-FILL"
1773                "UB8-BASH-FILL" "SYSTEM-AREA-UB8-FILL"
1774                "UB16-BASH-FILL" "SYSTEM-AREA-UB16-FILL"
1775                "UB32-BASH-FILL" "SYSTEM-AREA-UB32-FILL"
1776                "UB64-BASH-FILL" "SYSTEM-AREA-UB64-FILL"
1777
1778                ;; bit bash copiers (FIXME: 32/64-bit issues)
1779                "UB1-BASH-COPY" "SYSTEM-AREA-UB1-COPY"
1780                "COPY-UB1-TO-SYSTEM-AREA" "COPY-UB1-FROM-SYSTEM-AREA"
1781                "UB2-BASH-COPY" "SYSTEM-AREA-UB2-COPY"
1782                "COPY-UB2-TO-SYSTEM-AREA" "COPY-UB2-FROM-SYSTEM-AREA"
1783                "UB4-BASH-COPY" "SYSTEM-AREA-UB4-COPY"
1784                "COPY-UB4-TO-SYSTEM-AREA" "COPY-UB4-FROM-SYSTEM-AREA"
1785                "UB8-BASH-COPY" "SYSTEM-AREA-UB8-COPY"
1786                "COPY-UB8-TO-SYSTEM-AREA" "COPY-UB8-FROM-SYSTEM-AREA"
1787                "UB16-BASH-COPY" "SYSTEM-AREA-UB16-COPY"
1788                "COPY-UB16-TO-SYSTEM-AREA" "COPY-UB16-FROM-SYSTEM-AREA"
1789                "UB32-BASH-COPY" "SYSTEM-AREA-UB32-COPY"
1790                "COPY-UB32-TO-SYSTEM-AREA" "COPY-UB32-FROM-SYSTEM-AREA"
1791                "UB64-BASH-COPY" "SYSTEM-AREA-UB64-COPY"
1792                "COPY-UB64-TO-SYSTEM-AREA" "COPY-UB64-FROM-SYSTEM-AREA"
1793
1794                ;; Bit bashing position for bit-vectors
1795                "%BIT-POSITION"
1796                "%BIT-POSITION/0"
1797                "%BIT-POSITION/1"
1798
1799                ;; SIMPLE-FUN type and accessors
1800                "SIMPLE-FUN"
1801                "SIMPLE-FUN-P"
1802                "%SIMPLE-FUN-ARGLIST"
1803                "%SIMPLE-FUN-DOC"
1804                "%SIMPLE-FUN-INFO"
1805                "%SIMPLE-FUN-NAME"
1806                "%SIMPLE-FUN-NEXT"
1807                "%SIMPLE-FUN-SELF"
1808                "%SIMPLE-FUN-TYPE"
1809                "%SIMPLE-FUN-XREFS"
1810
1811                ;; CLOSURE type and accessors
1812                "CLOSURE"
1813                "CLOSUREP"
1814                "DO-CLOSURE-VALUES"
1815                "%CLOSURE-FUN"
1816                "%CLOSURE-INDEX-REF"
1817                "%CLOSURE-VALUES"
1818
1819                ;; Abstract function accessors
1820                "%FUN-DOC"
1821                "%FUN-FUN"
1822                "%FUN-LAMBDA-LIST"
1823                "%FUN-NAME"
1824
1825                "FDEFN" "MAKE-FDEFN" "FDEFN-P" "FDEFN-NAME" "FDEFN-FUN"
1826                "FDEFN-MAKUNBOUND" "OUTER-FDEFN"
1827                "%COERCE-CALLABLE-TO-FUN" "FUN-SUBTYPE"
1828                "*MAXIMUM-ERROR-DEPTH*" "%SET-SYMBOL-PLIST"
1829                "INFINITE-ERROR-PROTECT"
1830                "FIND-CALLER-OF-NAMED-FRAME"
1831                "FIND-CALLER-NAME-AND-FRAME"
1832                "FIND-INTERRUPTED-NAME-AND-FRAME"
1833                "%SET-SYMBOL-VALUE" "%SET-SYMBOL-GLOBAL-VALUE" "%SET-SYMBOL-PACKAGE"
1834                "OUTPUT-SYMBOL-NAME" "%COERCE-NAME-TO-FUN"
1835                "INVOKE-MACROEXPAND-HOOK" "DEFAULT-STRUCTURE-PRINT"
1836                "LAYOUT" "LAYOUT-LENGTH" "LAYOUT-PURE" "DSD-RAW-TYPE"
1837                "DEFSTRUCT-DESCRIPTION" "UNDECLARE-STRUCTURE" "DD-COPIER"
1838                "UNDEFINE-FUN-NAME" "DD-TYPE" "CLASSOID-STATE" "INSTANCE"
1839                "*TYPE-SYSTEM-INITIALIZED*" "FIND-LAYOUT" "DSD-NAME"
1840                "%TYPEP" "DD-RAW-INDEX" "DD-NAME" "CLASSOID-SUBCLASSES"
1841                "CLASSOID-LAYOUT" "CLASSOID-NAME" "CLASSOID-P"
1842                "DD-RAW-LENGTH" "NOTE-NAME-DEFINED" "%CODE-CODE-SIZE"
1843                "DD-SLOTS" "DD-INCLUDE" "SLOT-SETTER-LAMBDA-FORM"
1844                "%IMAGPART" "DSD-ACCESSOR-NAME" "%CODE-DEBUG-INFO"
1845                "LAYOUT-CLASSOID" "LAYOUT-INVALID"
1846                "DSD-TYPE" "%INSTANCEP" "DEFSTRUCT-SLOT-DESCRIPTION"
1847                "DD-PREDICATE-NAME"
1848                "CLASSOID-PROPER-NAME" "%NOTE-TYPE-DEFINED" "LAYOUT-INFO"
1849                "%SET-INSTANCE-LAYOUT" "DD-DEFAULT-CONSTRUCTOR"
1850                "LAYOUT-OF" "%REALPART"
1851                "STRUCTURE-CLASSOID-P" "DSD-INDEX" "STRUCTURE-CLASSOID"
1852                "%INSTANCE-LAYOUT" "LAYOUT-CLOS-HASH"
1853                "PROCLAIM-AS-FUN-NAME" "BECOME-DEFINED-FUN-NAME"
1854                "%NUMERATOR" "CLASSOID-TYPEP" "DSD-READ-ONLY"
1855                "DSD-DEFAULT" "LAYOUT-INHERITS" "DD-LENGTH"
1856                "%CODE-ENTRY-POINTS" "%DENOMINATOR"
1857                "%OTHER-POINTER-P"
1858
1859                "STANDARD-CLASSOID" "CLASSOID-OF"
1860                "MAKE-STANDARD-CLASSOID"
1861                "CLASSOID-CELL-CLASSOID"
1862                "CLASSOID-CELL-NAME"
1863                "CLASSOID-CELL-PCL-CLASS"
1864                "CLASSOID-CELL-TYPEP"
1865                "%CLEAR-CLASSOID"
1866                "FIND-CLASSOID-CELL" "EXTRACT-FUN-TYPE"
1867                "%RANDOM-DOUBLE-FLOAT"
1868                #!+long-float "%RANDOM-LONG-FLOAT"
1869                "%RANDOM-SINGLE-FLOAT" "STATIC-CLASSOID"
1870                "%FUNCALLABLE-INSTANCE-INFO" "RANDOM-CHUNK" "BIG-RANDOM-CHUNK"
1871                "N-RANDOM-CHUNK-BITS"
1872                "LAYOUT-CLOS-HASH-LIMIT"
1873                "BUILT-IN-CLASSOID-DIRECT-SUPERCLASSES"
1874                "BUILT-IN-CLASSOID-TRANSLATION" "RANDOM-LAYOUT-CLOS-HASH"
1875                "CLASSOID-PCL-CLASS" "FUNCALLABLE-STRUCTURE"
1876                "FUNCALLABLE-INSTANCE-FUN" "%FUNCALLABLE-INSTANCE-LAYOUT"
1877                "%SET-FUNCALLABLE-INSTANCE-LAYOUT"
1878                "BASIC-STRUCTURE-CLASSOID"
1879                "REGISTER-LAYOUT"
1880                "FUNCALLABLE-INSTANCE"
1881                "MAKE-STATIC-CLASSOID"
1882                "%MAKE-SYMBOL"
1883                "%FUNCALLABLE-INSTANCE-FUNCTION" "SYMBOL-HASH"
1884
1885                "EXTENDED-SEQUENCE" "*EXTENDED-SEQUENCE-TYPE*"
1886                "EXTENDED-SEQUENCE-P"
1887
1888                "BUILT-IN-CLASSOID" "CONDITION-CLASSOID-P"
1889                "CONDITION-CLASSOID-SLOTS" "MAKE-UNDEFINED-CLASSOID"
1890                "FIND-CLASSOID" "CLASSOID" "CLASSOID-DIRECT-SUPERCLASSES"
1891                "MAKE-LAYOUT" "REDEFINE-LAYOUT-WARNING" "SLOT-CLASSOID"
1892                "INSURED-FIND-CLASSOID" "ORDER-LAYOUT-INHERITS"
1893                "STD-COMPUTE-CLASS-PRECEDENCE-LIST"
1894
1895                ;; symbols from former SB!CONDITIONS
1896                "*HANDLER-CLUSTERS*" "*RESTART-CLUSTERS*"
1897                "*CONDITION-RESTARTS*" "SHOW-CONDITION" "CASE-FAILURE"
1898                "NAMESTRING-PARSE-ERROR" "NAMESTRING-PARSE-ERROR-OFFSET"
1899                "DESCRIBE-CONDITION" "MAKE-RESTART" "COERCE-TO-CONDITION"
1900
1901                "CONDITION-READER-FUNCTION"
1902                "CONDITION-WRITER-FUNCTION"
1903
1904                "CONDITION-SLOT-ALLOCATION"
1905                "CONDITION-SLOT-DOCUMENTATION"
1906                "CONDITION-SLOT-INITARGS"
1907                "CONDITION-SLOT-INITFORM"
1908                "CONDITION-SLOT-INITFORM-P"
1909                "CONDITION-SLOT-NAME" "CONDITION-SLOT-READERS"
1910                "CONDITION-SLOT-WRITERS"
1911
1912                "REDEFINITION-WARNING"
1913                "REDEFINITION-WITH-DEFUN"
1914                "REDEFINITION-WITH-DEFMACRO"
1915                "REDEFINITION-WITH-DEFGENERIC"
1916                "REDEFINITION-WITH-DEFMETHOD"
1917                "REDEFINITION-REPLACES-GENERIC-FUNCTION-P"
1918                "REDEFINITION-REPLACES-COMPILED-FUNCTION-WITH-INTERPRETED-P"
1919                "UNINTERESTING-ORDINARY-FUNCTION-REDEFINITION-P"
1920                "UNINTERESTING-GENERIC-FUNCTION-REDEFINITION-P"
1921                "UNINTERESTING-METHOD-REDEFINITION-P"
1922                "UNINTERESTING-REDEFINITION"
1923                "REDEFINITION-WITH-DEFTRANSFORM"
1924
1925                "DUBIOUS-ASTERISKS-AROUND-VARIABLE-NAME"
1926                "ASTERISKS-AROUND-LEXICAL-VARIABLE-NAME"
1927                "ASTERISKS-AROUND-CONSTANT-VARIABLE-NAME"
1928                "UNDEFINED-ALIEN-STYLE-WARNING"
1929                #!+sb-eval
1930                "LEXICAL-ENVIRONMENT-TOO-COMPLEX"
1931                "CHARACTER-DECODING-ERROR-IN-COMMENT"
1932                "DEPRECATED-EVAL-WHEN-SITUATIONS"
1933                "PROCLAMATION-MISMATCH"
1934                "TYPE-PROCLAMATION-MISMATCH"
1935                "FTYPE-PROCLAMATION-MISMATCH"
1936
1937                "!COLD-INIT" "!UNINTERN-INIT-ONLY-STUFF"
1938                "!GLOBALDB-COLD-INIT" "!FDEFN-COLD-INIT"
1939                "!FOREIGN-COLD-INIT" "!FUNCTION-NAMES-COLD-INIT"
1940                "!TYPE-CLASS-COLD-INIT" "!TYPEDEFS-COLD-INIT"
1941                "!ALIEN-TYPE-COLD-INIT" "!CLASSES-COLD-INIT"
1942                "!DEADLINE-COLD-INIT"
1943                "!EARLY-TYPE-COLD-INIT" "!LATE-TYPE-COLD-INIT"
1944                "!FIXUP-TYPE-COLD-INIT" "!TARGET-TYPE-COLD-INIT"
1945                "!RANDOM-COLD-INIT" "!READER-COLD-INIT"
1946                "!PATHNAME-COLD-INIT" "!DEBUG-INFO-COLD-INIT"
1947                "!TYPECHECKFUNS-COLD-INIT" "!LOADER-COLD-INIT"
1948                "!EXHAUST-COLD-INIT" "!PACKAGE-COLD-INIT"
1949                "!POLICY-COLD-INIT-OR-RESANIFY"
1950                "!VM-TYPE-COLD-INIT" "!BACKQ-COLD-INIT"
1951                "!SHARPM-COLD-INIT" "!EARLY-PROCLAIM-COLD-INIT"
1952                "!LATE-PROCLAIM-COLD-INIT" "!CLASS-FINALIZE"
1953                "!CONSTANTP-COLD-INIT"
1954                "!WORLD-LOCK-COLD-INIT"
1955
1956                "FLOAT-COLD-INIT-OR-REINIT"
1957                "GC-REINIT"
1958                "TIME-REINIT"
1959                "SIGNAL-COLD-INIT-OR-REINIT"
1960                "STREAM-COLD-INIT-OR-RESET"
1961
1962                ;; Cleanups to run before saving a core
1963                "DEBUG-DEINIT"
1964                "FLOAT-DEINIT"
1965                "FOREIGN-DEINIT"
1966                "PROFILE-DEINIT"
1967
1968                ;; Note: These are out of lexicographical order
1969                ;; because in CMU CL they were defined as
1970                ;; internal symbols in package "CL" imported
1971                ;; into package "C", as opposed to what we're
1972                ;; doing here, defining them as external symbols
1973                ;; in a package which is used by both "SB!C" and
1974                ;; "SB!IMPL". (SBCL's "SB!C" is directly
1975                ;; analogous to CMU CL's "C"; and for this
1976                ;; purpose, SBCL's "SB!IMPL" is analogous to CMU
1977                ;; CL's "CL".) As far as I know there's nothing
1978                ;; special about them, so they could be merged
1979                ;; into the same order as everything else in the
1980                ;; in this package. -- WHN 19990911
1981                "STRING>=*" "STRING>*" "STRING=*" "STRING<=*"
1982                "STRING<*" "STRING/=*" "%SVSET"
1983                "%SP-STRING-COMPARE" "%SETNTH" "%SETELT"
1984                "%SET-ROW-MAJOR-AREF" "%SET-FILL-POINTER"
1985                "%SET-FDEFINITION" "%SCHARSET" "%SBITSET"
1986                "%RPLACD" "%RPLACA" "%PUT" "%CHARSET" "%BITSET"
1987                "%ASET" "%ARRAY-TYPEP"))
1988
1989    #s(sb-cold:package-data
1990       :name "SB!THREAD"
1991       :use ("CL" "SB!ALIEN" "SB!INT" "SB!SYS" "SB!KERNEL")
1992       :doc "public (but low-level): native thread support"
1993       :export ("*CURRENT-THREAD*"
1994                "DESTROY-THREAD"
1995                "INTERRUPT-THREAD"
1996                "INTERRUPT-THREAD-ERROR"
1997                "INTERRUPT-THREAD-ERROR-THREAD"
1998                "RETURN-FROM-THREAD"
1999                "ABORT-THREAD"
2000                "MAIN-THREAD-P"
2001                "MAIN-THREAD"
2002                "JOIN-THREAD"
2003                "JOIN-THREAD-ERROR"
2004                "JOIN-THREAD-ERROR-THREAD"
2005                "LIST-ALL-THREADS"
2006                "MAKE-THREAD"
2007                "SYMBOL-VALUE-IN-THREAD"
2008                "SYMBOL-VALUE-IN-THREAD-ERROR"
2009                "TERMINATE-THREAD"
2010                "THREAD"
2011                "THREAD-DEADLOCK"
2012                "THREAD-DEADLOCK-CYCLE"
2013                "THREAD-ERROR"
2014                "THREAD-ERROR-THREAD"
2015                "THREAD-ALIVE-P"
2016                "THREAD-NAME"
2017                "THREAD-YIELD"
2018                ;; Memory barrier
2019                "BARRIER"
2020                ;; Mutexes
2021                "GET-MUTEX"
2022                "GRAB-MUTEX"
2023                "HOLDING-MUTEX-P"
2024                "MAKE-MUTEX"
2025                "MUTEX"
2026                "MUTEX-NAME"
2027                "MUTEX-OWNER"
2028                "MUTEX-VALUE"
2029                "RELEASE-MUTEX"
2030                "WITH-MUTEX"
2031                "WITH-RECURSIVE-LOCK"
2032                ;; Condition variables
2033                "CONDITION-BROADCAST"
2034                "CONDITION-NOTIFY"
2035                "CONDITION-WAIT"
2036                "MAKE-WAITQUEUE"
2037                "WAITQUEUE"
2038                "WAITQUEUE-NAME"
2039                ;; Sessions
2040                "MAKE-LISTENER-THREAD"
2041                "RELEASE-FOREGROUND"
2042                "WITH-NEW-SESSION"
2043                ;; Semaphores
2044                "MAKE-SEMAPHORE"
2045                "SEMAPHORE"
2046                "SEMAPHORE-NAME"
2047                "SEMAPHORE-COUNT"
2048                "SIGNAL-SEMAPHORE"
2049                "TRY-SEMAPHORE"
2050                "WAIT-ON-SEMAPHORE"
2051                ;; Semaphore notification objects
2052                "CLEAR-SEMAPHORE-NOTIFICATION"
2053                "MAKE-SEMAPHORE-NOTIFICATION"
2054                "SEMAPHORE-NOTIFICATION"
2055                "SEMAPHORE-NOTIFICATION-STATUS"))
2056
2057    #s(sb-cold:package-data
2058       :name "SB!LOOP"
2059       :doc "private: implementation details of LOOP"
2060       :use ("CL")
2061       :export ())
2062
2063    #s(sb-cold:package-data
2064       :name "SB!MOP"
2065       :doc
2066       "public: the MetaObject Protocol interface, as defined by
2067 The Art of the Metaobject Protocol, by Kiczales, des Rivieres and Bobrow:
2068 ISBN 0-262-61074-4, with exceptions as noted in the User Manual."
2069       :use ("CL")
2070       :reexport ("ADD-METHOD"
2071                  "ALLOCATE-INSTANCE"
2072                  "CLASS-NAME" "COMPUTE-APPLICABLE-METHODS"
2073                  "ENSURE-GENERIC-FUNCTION" "MAKE-INSTANCE"
2074                  "METHOD-QUALIFIERS" "REMOVE-METHOD"
2075                  "BUILT-IN-CLASS" "CLASS"
2076                  "FUNCTION" "GENERIC-FUNCTION"
2077                  "METHOD" "METHOD-COMBINATION"
2078                  "STANDARD-CLASS" "STANDARD-GENERIC-FUNCTION"
2079                  "STANDARD-METHOD" "STANDARD-OBJECT" "T")
2080       :export ("ADD-DEPENDENT"
2081                "ADD-DIRECT-METHOD"
2082                "ADD-DIRECT-SUBCLASS"
2083                "CLASS-DEFAULT-INITARGS"
2084                "CLASS-DIRECT-DEFAULT-INITARGS"
2085                "CLASS-DIRECT-SLOTS"
2086                "CLASS-DIRECT-SUBCLASSES"
2087                "CLASS-DIRECT-SUPERCLASSES"
2088                "CLASS-FINALIZED-P"
2089                "CLASS-PRECEDENCE-LIST"
2090                "CLASS-PROTOTYPE"
2091                "CLASS-SLOTS"
2092                "COMPUTE-APPLICABLE-METHODS-USING-CLASSES"
2093                "COMPUTE-CLASS-PRECEDENCE-LIST"
2094                "COMPUTE-DEFAULT-INITARGS"
2095                "COMPUTE-DISCRIMINATING-FUNCTION"
2096                "COMPUTE-EFFECTIVE-METHOD"
2097                "COMPUTE-EFFECTIVE-SLOT-DEFINITION"
2098                "COMPUTE-SLOTS"
2099                "DIRECT-SLOT-DEFINITION"
2100                "DIRECT-SLOT-DEFINITION-CLASS"
2101                "EFFECTIVE-SLOT-DEFINITION"
2102                "EFFECTIVE-SLOT-DEFINITION-CLASS"
2103                "ENSURE-CLASS"
2104                "ENSURE-CLASS-USING-CLASS"
2105                "ENSURE-GENERIC-FUNCTION-USING-CLASS"
2106                "EQL-SPECIALIZER"
2107                "EQL-SPECIALIZER-OBJECT"
2108                "EXTRACT-LAMBDA-LIST"
2109                "EXTRACT-SPECIALIZER-NAMES"
2110                "FINALIZE-INHERITANCE"
2111                "FIND-METHOD-COMBINATION"
2112                "FORWARD-REFERENCED-CLASS"
2113                "FUNCALLABLE-STANDARD-CLASS"
2114                "FUNCALLABLE-STANDARD-INSTANCE-ACCESS"
2115                "FUNCALLABLE-STANDARD-OBJECT"
2116                "GENERIC-FUNCTION-ARGUMENT-PRECEDENCE-ORDER"
2117                "GENERIC-FUNCTION-DECLARATIONS"
2118                "GENERIC-FUNCTION-LAMBDA-LIST"
2119                "GENERIC-FUNCTION-METHOD-CLASS"
2120                "GENERIC-FUNCTION-METHOD-COMBINATION"
2121                "GENERIC-FUNCTION-METHODS"
2122                "GENERIC-FUNCTION-NAME"
2123                "INTERN-EQL-SPECIALIZER"
2124                "MAKE-METHOD-LAMBDA"
2125                "MAP-DEPENDENTS"
2126                "METAOBJECT"
2127                "METHOD-FUNCTION"
2128                "METHOD-GENERIC-FUNCTION"
2129                "METHOD-LAMBDA-LIST"
2130                "METHOD-SPECIALIZERS"
2131                "ACCESSOR-METHOD-SLOT-DEFINITION"
2132                "READER-METHOD-CLASS"
2133                "REMOVE-DEPENDENT"
2134                "REMOVE-DIRECT-METHOD"
2135                "REMOVE-DIRECT-SUBCLASS"
2136                "SET-FUNCALLABLE-INSTANCE-FUNCTION"
2137                "SLOT-BOUNDP-USING-CLASS"
2138                "SLOT-DEFINITION"
2139                "SLOT-DEFINITION-ALLOCATION"
2140                "SLOT-DEFINITION-INITARGS"
2141                "SLOT-DEFINITION-INITFORM"
2142                "SLOT-DEFINITION-INITFUNCTION"
2143                "SLOT-DEFINITION-LOCATION"
2144                "SLOT-DEFINITION-NAME"
2145                "SLOT-DEFINITION-READERS"
2146                "SLOT-DEFINITION-WRITERS"
2147                "SLOT-DEFINITION-TYPE"
2148                "SLOT-MAKUNBOUND-USING-CLASS"
2149                "SLOT-VALUE-USING-CLASS"
2150                "SPECIALIZER"
2151                "SPECIALIZER-DIRECT-GENERIC-FUNCTIONS"
2152                "SPECIALIZER-DIRECT-METHODS"
2153                "STANDARD-ACCESSOR-METHOD"
2154                "STANDARD-DIRECT-SLOT-DEFINITION"
2155                "STANDARD-EFFECTIVE-SLOT-DEFINITION"
2156                "STANDARD-INSTANCE-ACCESS"
2157                "STANDARD-READER-METHOD"
2158                "STANDARD-SLOT-DEFINITION"
2159                "STANDARD-WRITER-METHOD"
2160                "UPDATE-DEPENDENT"
2161                "VALIDATE-SUPERCLASS"
2162                "WRITER-METHOD-CLASS"))
2163
2164    #s(sb-cold:package-data
2165       :name "SB!PCL"
2166       :doc
2167       "semi-public: This package includes useful meta-object protocol
2168 extensions, but even they are not guaranteed to be present in later
2169 versions of SBCL, and the other stuff in here is definitely not
2170 guaranteed to be present in later versions of SBCL.  Use of this
2171 package is deprecated in favour of SB-MOP."
2172       :use ("CL" "SB!MOP" "SB!INT" "SB!EXT" "SB!WALKER" "SB!KERNEL")
2173       ;; experimental SBCL-only (for now) symbols
2174       :export ("MAKE-METHOD-SPECIALIZERS-FORM"
2175                "PARSE-SPECIALIZER-USING-CLASS"
2176                "UNPARSE-SPECIALIZER-USING-CLASS"
2177                "+SLOT-UNBOUND+")
2178       ;; FIXME: After a little while, these reexports can probably go
2179       ;; away, as they're superseded by the use of SB-MOP as the
2180       ;; publically-accessible package.
2181       :reexport ( ;; CL symbols
2182                  "ADD-METHOD"
2183                  "ALLOCATE-INSTANCE"
2184                  "CLASS-NAME" "COMPUTE-APPLICABLE-METHODS"
2185                  "ENSURE-GENERIC-FUNCTION" "MAKE-INSTANCE"
2186                  "METHOD-QUALIFIERS" "REMOVE-METHOD"
2187                  ;; MOP symbols
2188                  "ADD-DEPENDENT"
2189                  "ADD-DIRECT-METHOD"
2190                  "ADD-DIRECT-SUBCLASS"
2191                  "CLASS-DEFAULT-INITARGS"
2192                  "CLASS-DIRECT-DEFAULT-INITARGS"
2193                  "CLASS-DIRECT-SLOTS"
2194                  "CLASS-DIRECT-SUBCLASSES"
2195                  "CLASS-DIRECT-SUPERCLASSES"
2196                  "CLASS-FINALIZED-P"
2197                  "CLASS-PRECEDENCE-LIST"
2198                  "CLASS-PROTOTYPE"
2199                  "CLASS-SLOTS"
2200                  "COMPUTE-APPLICABLE-METHODS-USING-CLASSES"
2201                  "COMPUTE-CLASS-PRECEDENCE-LIST"
2202                  "COMPUTE-DEFAULT-INITARGS"
2203                  "COMPUTE-DISCRIMINATING-FUNCTION"
2204                  "COMPUTE-EFFECTIVE-METHOD"
2205                  "COMPUTE-EFFECTIVE-SLOT-DEFINITION"
2206                  "COMPUTE-SLOTS"
2207                  "DIRECT-SLOT-DEFINITION"
2208                  "DIRECT-SLOT-DEFINITION-CLASS"
2209                  "EFFECTIVE-SLOT-DEFINITION"
2210                  "EFFECTIVE-SLOT-DEFINITION-CLASS"
2211                  "ENSURE-CLASS"
2212                  "ENSURE-CLASS-USING-CLASS"
2213                  "ENSURE-GENERIC-FUNCTION-USING-CLASS"
2214                  "EQL-SPECIALIZER"
2215                  "EQL-SPECIALIZER-OBJECT"
2216                  "EXTRACT-LAMBDA-LIST"
2217                  "EXTRACT-SPECIALIZER-NAMES"
2218                  "FINALIZE-INHERITANCE"
2219                  "FIND-METHOD-COMBINATION"
2220                  "FORWARD-REFERENCED-CLASS"
2221                  "FUNCALLABLE-STANDARD-CLASS"
2222                  "FUNCALLABLE-STANDARD-INSTANCE-ACCESS"
2223                  "FUNCALLABLE-STANDARD-OBJECT"
2224                  "GENERIC-FUNCTION-ARGUMENT-PRECEDENCE-ORDER"
2225                  "GENERIC-FUNCTION-DECLARATIONS"
2226                  "GENERIC-FUNCTION-LAMBDA-LIST"
2227                  "GENERIC-FUNCTION-METHOD-CLASS"
2228                  "GENERIC-FUNCTION-METHOD-COMBINATION"
2229                  "GENERIC-FUNCTION-METHODS"
2230                  "GENERIC-FUNCTION-NAME"
2231                  "INTERN-EQL-SPECIALIZER"
2232                  "MAKE-METHOD-LAMBDA"
2233                  "MAP-DEPENDENTS"
2234                  "METHOD-FUNCTION"
2235                  "METHOD-GENERIC-FUNCTION"
2236                  "METHOD-LAMBDA-LIST"
2237                  "METHOD-SPECIALIZERS"
2238                  "ACCESSOR-METHOD-SLOT-DEFINITION"
2239                  "READER-METHOD-CLASS"
2240                  "REMOVE-DEPENDENT"
2241                  "REMOVE-DIRECT-METHOD"
2242                  "REMOVE-DIRECT-SUBCLASS"
2243                  "SET-FUNCALLABLE-INSTANCE-FUNCTION"
2244                  "SLOT-BOUNDP-USING-CLASS"
2245                  "SLOT-DEFINITION"
2246                  "SLOT-DEFINITION-ALLOCATION"
2247                  "SLOT-DEFINITION-INITARGS"
2248                  "SLOT-DEFINITION-INITFORM"
2249                  "SLOT-DEFINITION-INITFUNCTION"
2250                  "SLOT-DEFINITION-LOCATION"
2251                  "SLOT-DEFINITION-NAME"
2252                  "SLOT-DEFINITION-READERS"
2253                  "SLOT-DEFINITION-WRITERS"
2254                  "SLOT-DEFINITION-TYPE"
2255                  "SLOT-MAKUNBOUND-USING-CLASS"
2256                  "SLOT-VALUE-USING-CLASS"
2257                  "SPECIALIZER"
2258                  "SPECIALIZER-DIRECT-GENERIC-FUNCTIONS"
2259                  "SPECIALIZER-DIRECT-METHODS"
2260                  "STANDARD-ACCESSOR-METHOD"
2261                  "STANDARD-DIRECT-SLOT-DEFINITION"
2262                  "STANDARD-EFFECTIVE-SLOT-DEFINITION"
2263                  "STANDARD-INSTANCE-ACCESS"
2264                  "STANDARD-READER-METHOD"
2265                  "STANDARD-SLOT-DEFINITION"
2266                  "STANDARD-WRITER-METHOD"
2267                  "UPDATE-DEPENDENT"
2268                  "VALIDATE-SUPERCLASS"
2269                  "WRITER-METHOD-CLASS"))
2270
2271    #s(sb-cold:package-data
2272       :name "SB!PRETTY"
2273       :doc "private: implementation of pretty-printing"
2274       :use ("CL" "SB!EXT" "SB!INT" "SB!KERNEL")
2275       :export ("OUTPUT-PRETTY-OBJECT"
2276                "PRETTY-STREAM" "PRETTY-STREAM-P"
2277                "PPRINT-DISPATCH-TABLE"
2278                "!PPRINT-COLD-INIT"))
2279
2280    #s(sb-cold:package-data
2281       :name "SB!PROFILE"
2282       :doc "public: the interface to the profiler"
2283       :use ("CL" "SB!EXT" "SB!INT" "SB!KERNEL")
2284       :export ("PROFILE" "REPORT" "RESET" "UNPROFILE"))
2285
2286    #s(sb-cold:package-data
2287       :name "SB!SEQUENCE"
2288       :doc "semi-public: implements something which might eventually
2289 be submitted as a CDR"
2290       :use ()
2291       :export ("DOSEQUENCE"
2292
2293                "MAKE-SEQUENCE-ITERATOR" "MAKE-SIMPLE-SEQUENCE-ITERATOR"
2294
2295                "ITERATOR-STEP" "ITERATOR-ENDP" "ITERATOR-ELEMENT"
2296                "ITERATOR-INDEX" "ITERATOR-COPY"
2297
2298                "WITH-SEQUENCE-ITERATOR" "WITH-SEQUENCE-ITERATOR-FUNCTIONS"
2299
2300                "CANONIZE-TEST" "CANONIZE-KEY"
2301
2302                "LENGTH" "ELT"
2303                "MAKE-SEQUENCE-LIKE" "ADJUST-SEQUENCE"
2304
2305                "COUNT" "COUNT-IF" "COUNT-IF-NOT"
2306                "FIND" "FIND-IF" "FIND-IF-NOT"
2307                "POSITION" "POSITION-IF" "POSITION-IF-NOT"
2308                "SUBSEQ" "COPY-SEQ" "FILL"
2309                "NSUBSTITUTE" "NSUBSTITUTE-IF" "NSUBSTITUTE-IF-NOT"
2310                "SUBSTITUTE" "SUBSTITUTE-IF" "SUBSTITUTE-IF-NOT"
2311                "REPLACE" "REVERSE" "NREVERSE" "REDUCE"
2312                "MISMATCH" "SEARCH"
2313                "DELETE" "DELETE-IF" "DELETE-IF-NOT"
2314                "REMOVE" "REMOVE-IF" "REMOVE-IF-NOT"
2315                "DELETE-DUPLICATES" "REMOVE-DUPLICATES" "SORT" "STABLE-SORT"))
2316
2317    #s(sb-cold:package-data
2318       :name "SB!SYS"
2319       :doc
2320       "private: In theory, this \"contains functions and information
2321 necessary for system interfacing\" (said cmu-user.tex at the time
2322 of the SBCL code fork). That probably was and is a good idea, but in
2323 practice, the distinctions between this package and SB-KERNEL
2324 and even SB-VM seem to have become somewhat blurred over the years.
2325 Some anomalies (e.g. FIND-IF-IN-CLOSURE being in SB-SYS instead of
2326 SB-KERNEL) have been undone, but probably more remain."
2327       :use ("CL" "SB!EXT" "SB!INT")
2328       :export (;; FIXME: %PRIMITIVE shouldn't be here. (I now know that %SYS
2329                ;; is for OS-dependent stuff. %PRIMITIVE should probably be in
2330                ;; SB!KERNEL.)
2331                "%PRIMITIVE"
2332                "%STANDARD-CHAR-P"
2333                "*EXIT-ERROR-HANDLER*"
2334                "*EXIT-IN-PROCESS*"
2335                "*ALLOW-WITH-INTERRUPTS*"
2336                "*INTERRUPTS-ENABLED*"
2337                "*INTERRUPT-PENDING*"
2338                "*LINKAGE-INFO*"
2339                "*LONG-SITE-NAME*" "*SHORT-SITE-NAME*"
2340                "*PERIODIC-POLLING-FUNCTION*"
2341                "*PERIODIC-POLLING-PERIOD*"
2342                "*RUNTIME-DLHANDLE*"
2343                "*SHARED-OBJECTS*"
2344                "*STATIC-FOREIGN-SYMBOLS*"
2345                "*STDERR*" "*STDIN*"
2346                "*STDOUT*"
2347                "*TTY*"
2348                "ADD-FD-HANDLER"
2349                "ALLOCATE-SYSTEM-MEMORY"
2350                "ALLOW-WITH-INTERRUPTS"
2351                "BEEP"
2352                "BREAKPOINT-ERROR"
2353                "CANCEL-DEADLINE"
2354                "CLOSE-SHARED-OBJECTS"
2355                "DEADLINE-TIMEOUT"
2356                "DEALLOCATE-SYSTEM-MEMORY"
2357                "DECODE-TIMEOUT"
2358                "DECODE-INTERNAL-TIME"
2359                "DEFAULT-INTERRUPT"
2360                "DEFER-DEADLINE"
2361                "DYNAMIC-FOREIGN-SYMBOLS-P"
2362                "DLOPEN-OR-LOSE"
2363                "FROB-DO-BODY"
2364                "ENABLE-INTERRUPT"
2365                "ENSURE-DYNAMIC-FOREIGN-SYMBOL-ADDRESS"
2366                "EXTERN-ALIEN-NAME"
2367                "EXIT-CODE"
2368                "FD-STREAM" "FD-STREAM-FD" "FD-STREAM-P"
2369                "FIND-DYNAMIC-FOREIGN-SYMBOL-ADDRESS"
2370                "FIND-FOREIGN-SYMBOL-ADDRESS"
2371                "FIND-FOREIGN-SYMBOL-IN-TABLE"
2372                "FOREIGN-SYMBOL-SAP"
2373                "FOREIGN-SYMBOL-ADDRESS"
2374                "FOREIGN-SYMBOL-DATAREF-SAP"
2375                "GET-MACHINE-VERSION" "GET-PAGE-SIZE" "GET-SYSTEM-INFO"
2376                "IGNORE-INTERRUPT"
2377                "IN-INTERRUPTION"
2378                "INTERACTIVE-INTERRUPT"
2379                "INT-SAP"
2380                "INVALIDATE-DESCRIPTOR"
2381                "INVOKE-INTERRUPTION"
2382                "IO-TIMEOUT"
2383                "LIST-DYNAMIC-FOREIGN-SYMBOLS"
2384                "MACRO" "MAKE-FD-STREAM"
2385                "MEMORY-FAULT-ERROR"
2386                "MEMMOVE"
2387                "OS-EXIT"
2388                "OS-COLD-INIT-OR-REINIT" "OS-CONTEXT-T" "OUTPUT-RAW-BYTES"
2389                "READ-N-BYTES"
2390                "REMOVE-FD-HANDLER"
2391                "REOPEN-SHARED-OBJECTS"
2392                "SAP+" "SAP-"
2393                "SAP-FOREIGN-SYMBOL"
2394                "SAP-INT"
2395                "SAP-REF-16" "SAP-REF-32" "SAP-REF-64" "SAP-REF-WORD"
2396                "SAP-REF-8"
2397                "SAP-REF-DOUBLE" "SAP-REF-LISPOBJ" "SAP-REF-LONG"
2398                "SAP-REF-OCTETS"
2399                "SAP-REF-SAP" "SAP-REF-SINGLE"
2400                "SAP<" "SAP<=" "SAP=" "SAP>" "SAP>="
2401                "SCRUB-CONTROL-STACK" "SERVE-ALL-EVENTS"
2402                "SIGNAL-DEADLINE"
2403                "SERVE-EVENT"
2404                "SIGNED-SAP-REF-16" "SIGNED-SAP-REF-32"
2405                "SIGNED-SAP-REF-64" "SIGNED-SAP-REF-WORD" "SIGNED-SAP-REF-8"
2406                ;; FIXME: STRUCTURE!OBJECT stuff probably belongs in SB!KERNEL.
2407                "STRUCTURE!OBJECT" "STRUCTURE!OBJECT-MAKE-LOAD-FORM"
2408                "SYSTEM-AREA-POINTER" "SYSTEM-AREA-POINTER-P"
2409                "SYSTEM-CONDITION" "SYSTEM-CONDITION-ADDRESS"
2410                "SYSTEM-CONDITION-CONTEXT"
2411                "REINIT-INTERNAL-REAL-TIME"
2412                "SYSTEM-INTERNAL-RUN-TIME"
2413                "UNDEFINED-FOREIGN-SYMBOLS-P"
2414                "UPDATE-LINKAGE-TABLE" "VECTOR-SAP"
2415                "WAIT-UNTIL-FD-USABLE"
2416                "WITH-DEADLINE"
2417                "WITH-FD-HANDLER"
2418                "WITH-INTERRUPTS" "WITH-LOCAL-INTERRUPTS"
2419                "WITH-PINNED-OBJECTS" "WITHOUT-GCING"
2420                "WITHOUT-INTERRUPTS"
2421                "WITH-INTERRUPT-BINDINGS"
2422                "WORDS"))
2423
2424    #s(sb-cold:package-data
2425       :name "SB!UNIX"
2426       :doc
2427       "private: a wrapper layer for SBCL itself to use when talking
2428 with an underlying Unix-y operating system.
2429 This was a public package in CMU CL, but that was different.
2430 CMU CL's UNIX package tried to provide a comprehensive,
2431 stable Unix interface suitable for the end user.
2432 This package only tries to implement what happens to be
2433 needed by the current implementation of SBCL, and makes
2434 no guarantees of interface stability."
2435       :use ("CL" "SB!ALIEN" "SB!EXT" "SB!INT" "SB!SYS")
2436       :reexport ("OFF-T"
2437                  "SIZE-T")
2438       :export ( ;; wrappers around Unix stuff to give just what Lisp needs
2439                "NANOSLEEP"
2440                "UID-USERNAME"
2441                "UID-HOMEDIR"
2442                "USER-HOMEDIR"
2443                "WITH-RESTARTED-SYSCALL"
2444                "SB-MKSTEMP"
2445                "FD-TYPE"
2446
2447                ;; stuff with a one-to-one mapping to Unix constructs
2448                "D-INO" "D-NAME" "D-NAMLEN" "D-OFF" "D-RECLEN" "DEV-T" "DIRECT"
2449                "EXECGRP" "EXECOTH" "EXECOWN" "F-DUPFD" "F-GETFD" "F-GETFL"
2450                "F-GETOWN" "F-SETFD" "F-SETFL" "F-SETOWN" "FAPPEND" "FASYNC"
2451                "FCREAT" "FEXCL" "FIONREAD" "FNDELAY" "FTRUNC" "F_OK" "GID-T"
2452                "INO-T" "UNIX-ACCESS" "UNIX-SETITIMER" "UNIX-GETITIMER"
2453                "KBDCGET" "KBDCRESET"
2454                "KBDCRST" "KBDCSET" "KBDCSSTD" "KBDGCLICK" "KBDSCLICK" "KBDSGET"
2455                "L_INCR" "L_SET" "L_XTND" "O_APPEND" "O_CREAT" "O_EXCL"
2456                "O_RDONLY" "O_RDWR" "O_TRUNC" "O_WRONLY" "POSIX-GETCWD"
2457                "POSIX-GETCWD/" "READGRP" "READOTH" "READOWN" "RLIM-CUR"
2458                "RLIM-MAX" "RU-IDRSS" "RU-INBLOCK" "RU-ISRSS" "RU-IXRSS"
2459                "RU-MAJFLT" "RU-MAXRSS" "RU-MINFLT" "RU-MSGRCV" "RU-MSGSND"
2460                "RU-NIVCSW" "RU-NSIGNALS" "RU-NSWAP" "RU-NVCSW" "RU-OUBLOCK"
2461                "RU-STIME" "RU-UTIME" "RUSAGE_CHILDREN" "RUSAGE_SELF" "RUSEAGE"
2462                "R_OK" "S-IEXEC" "S-IFBLK" "S-IFCHR" "S-IFDIR" "S-IFIFO" "S-IFLNK" "S-IFMT"
2463                "S-IFREG" "S-IFSOCK" "S-IREAD" "S-ISGID" "S-ISUID" "S-ISVTX"
2464                "S-IWRITE" "SAVETEXT" "SB-MKSTEMP" "SC-MASK" "SC-ONSTACK"
2465                "SETUIDEXEC" "SG-ERASE" "SG-FLAGS" "SG-ISPEED" "SG-KILL"
2466                "SG-OSPEED" "SGTTYB" "ST-ATIME" "ST-BLKSIZE" "ST-BLOCKS"
2467                "ST-CTIME" "ST-DEV" "ST-GID" "ST-MODE" "ST-MTIME" "ST-NLINK"
2468                "ST-RDEV" "ST-SIZE" "ST-UID" "STAT" "TERMINAL-SPEEDS" "TIME-T"
2469                "TIMEVAL" "TIMEZONE" "TIOCFLUSH" "TIOCGETC" "TIOCGETP" "TIOCGLTC"
2470                "TIOCGPGRP" "TIOCGWINSZ" "TIOCNOTTY" "TIOCSETC" "TIOCSETP"
2471                "TIOCSLTC" "TIOCSPGRP" "TIOCSWINSZ" "TV-SEC" "TV-USEC"
2472                "TZ-DSTTIME" "TZ-MINUTESWEST" "UID-T" "UNIX-CLOSE"
2473                "UNIX-CLOSEDIR" "UNIX-DIRENT-NAME" "UNIX-DUP"
2474                "UNIX-FILE-MODE" "UNIX-FSTAT"
2475                "UNIX-GETHOSTNAME" "UNIX-GETPID" "UNIX-GETRUSAGE"
2476                "UNIX-GETTIMEOFDAY" "UNIX-GETUID" "UNIX-GID"
2477                "UNIX-EXIT"
2478                "UNIX-IOCTL"
2479                "UNIX-ISATTY" "UNIX-LSEEK" "UNIX-LSTAT" "UNIX-MKDIR"
2480                "UNIX-OPEN" "UNIX-OPENDIR" "UNIX-PATHNAME" "UNIX-PID"
2481                "UNIX-PIPE" "UNIX-SIMPLE-POLL" "UNIX-READ" "UNIX-READDIR" "UNIX-READLINK" "UNIX-REALPATH"
2482                "UNIX-RENAME" "UNIX-SELECT" "UNIX-STAT" "UNIX-UID"
2483                "UNIX-UNLINK" "UNIX-WRITE"
2484                "WINSIZE"
2485                "WRITEGRP" "WRITEOTH" "WRITEOWN" "WS-COL" "WS-ROW" "WS-XPIXEL"
2486                "WS-YPIXEL" "WNOHANG" "WSTOPPED" "WUNTRACED" "W_OK" "X_OK"
2487
2488                ;; signals
2489                "SIGALRM" "SIGBUS" "SIGCHLD" "SIGCONT" "SIGEMT" "SIGFPE"
2490                "SIGHUP" "SIGILL" "SIGINT" "SIGIO" "SIGIOT" "SIGKILL"
2491                "SIGPIPE" "SIGPROF" "SIGQUIT" "SIGSEGV" "SIGSTOP" "SIGSYS"
2492                "SIGTERM" "SIGTRAP" "SIGTSTP" "SIGTTIN" "SIGTTOU" "SIGURG"
2493                "SIGUSR1" "SIGUSR2" "SIGVTALRM" "SIGWAITING" "SIGWINCH"
2494                "SIGXCPU" "SIGXFSZ"
2495
2496                ;; errors
2497                "E2BIG" "EADDRINUSE" "EADDRNOTAVAIL" "EAFNOSUPPORT"
2498                "EAGAIN" "EALREADY" "EBADF" "EBUSY" "ECHILD" "ECONNABORTED"
2499                "ECONNREFUSED" "ECONNRESET" "EDEADLK" "EDESTADDRREQ" "EDOM"
2500                "EDQUOT" "EEXIST" "EFAULT" "EFBIG" "EHOSTDOWN"
2501                "EHOSTUNREACH" "EINPROGRESS" "EINTR" "EINVAL" "EIO"
2502                "EISCONN" "EISDIR" "ELOCAL" "ELOOP" "EMFILE" "EMLINK"
2503                "EMSGSIZE" "ENAMETOOLONG" "ENETDOWN" "ENETRESET"
2504                "ENETUNREACH" "ENFILE" "ENOBUFS" "ENODEV" "ENOENT"
2505                "ENOEXEC" "ENOMEM" "ENOPROTOOPT" "ENOSPC" "ENOTBLK"
2506                "ENOTCONN" "ENOTEMPTY" "ENOTSOCK" "ENOTTY" "ENXIO"
2507                "EOPNOTSUPP" "EPERM" "EPFNOSUPPORT" "EPIPE" "EPROCLIM"
2508                "EPROTONOSUPPORT" "EPROTOTYPE" "ERANGE" "EREMOTE"
2509                "ERESTART" "EROFS" "ESHUTDOWN" "ESOCKTNOSUPPORT" "ESPIPE"
2510                "ESRCH" "ESUCCESS" "ETIMEDOUT" "ETOOMANYREFS" "ETXTBSY"
2511                "EUSERS" "EVICEERR" "EVICEOP" "EWOULDBLOCK" "EXDEV"
2512
2513                "FD-ISSET" "FD-SET" "LTCHARS" "UNIX-FAST-SELECT"
2514                "UNIX-KILL" "CODESET"
2515                "TCSETPGRP" "FD-ZERO" "FD-CLR" "CHECK" "UNIX-RESOLVE-LINKS"
2516                "FD-SETSIZE" "TCGETPGRP" "UNIX-FAST-GETRUSAGE"
2517                "UNIX-KILLPG"
2518                "TIOCSIGSEND"
2519                "C-IFLAG" "C-LFLAG" "C-OFLAG"
2520                "C-CFLAG" "TCSAFLUSH" "C-CC" "SIOCSPGRP" "TERMIOS"
2521                "O_NDELAY" "O_NOCTTY"
2522                "O_NONBLOCK" "TCSANOW" "TCSADRAIN" "TCIFLUSH" "TCOFLUSH"
2523                "TCIOFLUSH" "TTY-IGNBRK" "TTY-BRKINT" "TTY-IGNPAR" "TTY-PARMRK"
2524                "TTY-INPCK" "TTY-ISTRIP" "TTY-INLCR" "TTY-IGNCR" "TTY-ICRNL"
2525                "TTY-IUCLC" "TTY-IXON" "TTY-IXANY" "TTY-IXOFF" "TTY-IENQAK"
2526                "TTY-IMAXBEL" "TTY-OPOST" "TTY-OLCUC" "TTY-ONLCR" "TTY-OCRNL"
2527                "TTY-ONOCR" "TTY-ONLRET" "TTY-OFILL" "TTY-OFDEL" "TTY-ISIG"
2528                "TTY-ICANON" "TTY-XCASE" "TTY-ECHO" "TTY-ECHOE" "TTY-ECHOK"
2529                "TTY-ECHONL" "TTY-NOFLSH" "TTY-IEXTEN" "TTY-TOSTOP" "TTY-ECHOCTL"
2530                "TTY-ECHOPRT" "TTY-ECHOKE"  "TTY-DEFECHO" "TTY-FLUSHO"
2531                "TTY-PENDIN" "TTY-CSTOPB" "TTY-CREAD" "TTY-PARENB" "TTY-PARODD"
2532                "TTY-HUPCL" "TTY-CLOCAL" "RCV1EN" "XMT1EN" "TTY-LOBLK" "VINTR"
2533                "VQUIT" "VERASE" "VKILL" "VEOF" "VEOL" "VEOL2" "TTY-CBAUD"
2534                "TTY-CSIZE" "TTY-CS5" "TTY-CS6" "TTY-CS7" "TTY-CS8" "VMIN" "VTIME"
2535                "VSUSP" "VSTART" "VSTOP" "VDSUSP"
2536                #!+(or svr4 bsd linux) "O_NDELAY"
2537                #!+(or svr4 linux)
2538                ("EADDRINUSE"
2539                 "EADDRNOTAVAIL" "EADV"
2540                 "EAFNOSUPPORT" "EALREADY" "EBADE" "EBADFD"
2541                 "EBADMSG" "EBADR" "EBADRQC"
2542                 "EBADSLT" "EBFONT" #!+svr4 "ECANCELED"
2543                 "ECHRNG" "ECOMM" "ECONNABORTED"
2544                 "ECONNREFUSED" "ECONNRESET" "EDEADLK"
2545                 "EDEADLOCK" "EDESTADDRREQ" #!+linux "EDOTDOT"
2546                 #!+linux "EDQUOT" "EHOSTDOWN" "EHOSTUNREACH"
2547                 "EIDRM" "EILSEQ" "EINPROGRESS"
2548                 "EISCONN" #!+linux "EISNAM" "EL2HLT"
2549                 "EL2NSYNC" "EL3HLT" "EL3RST" "ELIBACC"
2550                 "ELIBBAD" "ELIBEXEC" "ELIBMAX" "ELIBSCN"
2551                 "ELNRNG" "ELOOP" "EMSGSIZE" "EMULTIHOP"
2552                 "ENAMETOOLONG" #!+linux "ENAVAIL"
2553                 "ENETDOWN" "ENETRESET" "ENETUNREACH" "ENOANO"
2554                 "ENOBUFS" "ENOCSI" "ENODATA" "ENOLCK"
2555                 "ENOLINK" "ENOMSG" "ENONET" "ENOPKG"
2556                 "ENOPROTOOPT" "ENOSR" "ENOSTR" "ENOSYS"
2557                 "ENOTCONN" "ENOTEMPTY" #!+linux "ENOTNAM"
2558                 "ENOTSOCK" #!+svr4 "ENOTSUP" "ENOTUNIQ"
2559                 "EOPNOTSUPP" "EOVERFLOW" "EPFNOSUPPORT"
2560                 "EPROTO" "EPROTONOSUPPORT" "EPROTOTYPE"
2561                 "EREMCHG" "EREMOTE" #!+linux "EREMOTEIO"
2562                 "ERESTART" "ESHUTDOWN" "ESOCKTNOSUPPORT"
2563                 "ESRMNT" "ESTALE" "ESTRPIPE" "ETIME"
2564                 "ETIMEDOUT" "ETOOMANYREFS" #!+linux "EUCLEAN"
2565                 "EUNATCH" "EUSERS" "EWOULDBLOCK" "EXFULL")))
2566
2567    #s(sb-cold:package-data
2568       :name "SB!VM"
2569       :doc
2570       "internal: the default place to hide information about the hardware and data
2571 structure representations"
2572       :use ("CL" "SB!ALIEN" "SB!ALIEN-INTERNALS" "SB!ASSEM" "SB!C"
2573                  "SB!EXT" "SB!FASL" "SB!INT" "SB!KERNEL" "SB!SYS" "SB!UNIX")
2574       :reexport ("WORD")
2575       :export ("*ALLOC-SIGNAL*"
2576                "*ASSEMBLY-UNIT-LENGTH*"
2577                "*PRIMITIVE-OBJECTS*"
2578                "+HIGHEST-NORMAL-GENERATION+"
2579                "+PSEUDO-STATIC-GENERATION+"
2580                "%COMPILER-BARRIER" "%DATA-DEPENDENCY-BARRIER"
2581                "%MEMORY-BARRIER" "%READ-BARRIER" "%WRITE-BARRIER"
2582                "AFTER-BREAKPOINT-TRAP"
2583                "ANY-REG-SC-NUMBER" "ARRAY-DATA-SLOT" "ARRAY-DIMENSIONS-OFFSET"
2584                "ARRAY-DISPLACED-P-SLOT" "ARRAY-DISPLACEMENT-SLOT"
2585                "ARRAY-DISPLACED-FROM-SLOT"
2586                "ARRAY-ELEMENTS-SLOT" "ARRAY-FILL-POINTER-P-SLOT"
2587                "ARRAY-FILL-POINTER-SLOT" "ATOMIC-FLAG"
2588                "CHARACTER-REG-SC-NUMBER"
2589                "CHARACTER-STACK-SC-NUMBER" "CHARACTER-WIDETAG"
2590                "BIGNUM-DIGITS-OFFSET" "BIGNUM-WIDETAG" "BINDING-SIZE"
2591                "BINDING-SYMBOL-SLOT" "BINDING-VALUE-SLOT" "BREAKPOINT-TRAP"
2592                "N-BYTE-BITS" "BYTE-REG-SC-NUMBER"
2593                "CATCH-BLOCK-CURRENT-CODE-SLOT"
2594                "CATCH-BLOCK-CURRENT-CONT-SLOT" "CATCH-BLOCK-CURRENT-UWP-SLOT"
2595                "CATCH-BLOCK-ENTRY-PC-SLOT" "CATCH-BLOCK-PREVIOUS-CATCH-SLOT"
2596                "CATCH-BLOCK-SC-NUMBER" "CATCH-BLOCK-SIZE" "CATCH-BLOCK-SIZE-SLOT"
2597                "CATCH-BLOCK-TAG-SLOT" "CERROR-TRAP"
2598                "CLOSURE-FUN-SLOT"
2599                "CLOSURE-HEADER-WIDETAG" "CLOSURE-INFO-OFFSET"
2600                "CODE-CODE-SIZE-SLOT" "CODE-CONSTANTS-OFFSET"
2601                "CODE-DEBUG-INFO-SLOT" "CODE-ENTRY-POINTS-SLOT"
2602                "CODE-HEADER-WIDETAG"
2603                "CODE-TRACE-TABLE-OFFSET-SLOT" "COMPLEX-ARRAY-WIDETAG"
2604                "COMPLEX-BIT-VECTOR-WIDETAG" "COMPLEX-DOUBLE-FLOAT-FILLER-SLOT"
2605                "COMPLEX-DOUBLE-FLOAT-IMAG-SLOT" "COMPLEX-DOUBLE-FLOAT-REAL-SLOT"
2606                "COMPLEX-DOUBLE-FLOAT-SIZE" "COMPLEX-DOUBLE-FLOAT-WIDETAG"
2607                "COMPLEX-DOUBLE-REG-SC-NUMBER" "COMPLEX-DOUBLE-STACK-SC-NUMBER"
2608                "COMPLEX-IMAG-SLOT" "COMPLEX-REAL-SLOT"
2609                #!+long-float "COMPLEX-LONG-FLOAT-IMAG-SLOT"
2610                #!+long-float "COMPLEX-LONG-FLOAT-REAL-SLOT"
2611                #!+long-float "COMPLEX-LONG-FLOAT-SIZE"
2612                #!+long-float "COMPLEX-LONG-FLOAT-WIDETAG"
2613                #!+long-float "COMPLEX-LONG-REG-SC-NUMBER"
2614                #!+long-float "COMPLEX-LONG-STACK-SC-NUMBER"
2615                #!-x86-64 #!-x86-64
2616                "COMPLEX-SINGLE-FLOAT-IMAG-SLOT" "COMPLEX-SINGLE-FLOAT-REAL-SLOT"
2617                #!+x86-64
2618                "COMPLEX-SINGLE-FLOAT-DATA-SLOT"
2619                "COMPLEX-SINGLE-FLOAT-SIZE" "COMPLEX-SINGLE-FLOAT-WIDETAG"
2620                "COMPLEX-SINGLE-REG-SC-NUMBER" "COMPLEX-SINGLE-STACK-SC-NUMBER"
2621                "COMPLEX-SIZE" "COMPLEX-BASE-STRING-WIDETAG"
2622                #!+sb-unicode "COMPLEX-CHARACTER-STRING-WIDETAG"
2623                "COMPLEX-WIDETAG"
2624                "COMPLEX-VECTOR-NIL-WIDETAG"
2625                "COMPLEX-VECTOR-WIDETAG" "CONS-CAR-SLOT" "CONS-CDR-SLOT"
2626                "CONS-SIZE" "CONSTANT-SC-NUMBER"
2627                "CONTEXT-FLOATING-POINT-MODES" "CONTEXT-FLOAT-REGISTER"
2628                "CONTEXT-PC" "CONTEXT-REGISTER"
2629                "CONTROL-STACK-SC-NUMBER" "COUNT-NO-OPS"
2630                "*CURRENT-CATCH-BLOCK*"
2631                "CURRENT-FLOAT-TRAP" "DEFINE-FOR-EACH-PRIMITIVE-OBJECT"
2632                "DESCRIPTOR-REG-SC-NUMBER" "DESCRIPTOR-VS-NON-DESCRIPTOR-STORAGE"
2633                "DOUBLE-FLOAT-EXPONENT-BYTE" "DOUBLE-FLOAT-BIAS"
2634                "DOUBLE-FLOAT-DIGITS" "DOUBLE-FLOAT-EXPONENT-BYTE"
2635                "DOUBLE-FLOAT-FILLER-SLOT" "DOUBLE-FLOAT-HIDDEN-BIT"
2636                "DOUBLE-FLOAT-NORMAL-EXPONENT-MAX"
2637                "DOUBLE-FLOAT-NORMAL-EXPONENT-MIN" "DOUBLE-FLOAT-SIGNIFICAND-BYTE"
2638                "DOUBLE-FLOAT-SIZE" "DOUBLE-FLOAT-TRAPPING-NAN-BIT"
2639                "DOUBLE-FLOAT-WIDETAG" "DOUBLE-FLOAT-VALUE-SLOT"
2640                "DOUBLE-INT-CARG-REG-SC-NUMBER" "DOUBLE-REG-SC-NUMBER"
2641                "DOUBLE-STACK-SC-NUMBER"
2642                "ERROR-TRAP" "EVEN-FIXNUM-LOWTAG"
2643                "EXPORTED-STATIC-SYMBOLS"
2644                "FDEFN-FUN-SLOT" "FDEFN-NAME-SLOT" "FDEFN-RAW-ADDR-SLOT"
2645                "FDEFN-SIZE" "FDEFN-WIDETAG" "FIXNUMIZE"
2646                "FIXNUM-TAG-MASK"
2647                "FIXUP-CODE-OBJECT" "FLOAT-DENORMAL-TRAP-BIT"
2648                "FLOAT-DIVIDE-BY-ZERO-TRAP-BIT"
2649                "FLOAT-IMPRECISE-TRAP-BIT" "FLOAT-INVALID-TRAP-BIT"
2650                "FLOAT-OVERFLOW-TRAP-BIT" "FLOAT-SIGN-SHIFT"
2651                "FLOAT-UNDERFLOW-TRAP-BIT" "FLOATING-POINT-MODES"
2652                "FORWARDING-POINTER-TYPE"
2653                "FP-CONSTANT-SC-NUMBER"
2654                "FP-DOUBLE-ZERO-SC-NUMBER" "FP-SINGLE-ZERO-SC-NUMBER"
2655                "FUNCALLABLE-INSTANCE-TRAMPOLINE-SLOT"
2656                "FUNCALLABLE-INSTANCE-HEADER-WIDETAG"
2657                "FUNCALLABLE-INSTANCE-INFO-OFFSET"
2658                "SIMPLE-FUN-ARGLIST-SLOT" "SIMPLE-FUN-CODE-OFFSET"
2659                "FUN-END-BREAKPOINT-TRAP"
2660                "SIMPLE-FUN-HEADER-CODE-OFFSET"
2661                "SIMPLE-FUN-HEADER-NEXT-SLOT"
2662                "SIMPLE-FUN-HEADER-SELF-SLOT"
2663                "SIMPLE-FUN-HEADER-WIDETAG"
2664                "SIMPLE-FUN-HEADER-TYPE-SLOT"
2665                "SIMPLE-FUN-NAME-SLOT"
2666                "SIMPLE-FUN-NEXT-SLOT"
2667                "FUN-POINTER-LOWTAG"
2668                "SIMPLE-FUN-SELF-SLOT"
2669                "SIMPLE-FUN-TYPE-SLOT"
2670                "GENCGC-CARD-BYTES"
2671                "GENCGC-ALLOC-GRANULARITY"
2672                "GENCGC-RELEASE-GRANULARITY"
2673                #!+ppc "PSEUDO-ATOMIC-INTERRUPTED-FLAG"
2674                #!+ppc "PSEUDO-ATOMIC-FLAG"
2675                "GENESIS" "HALT-TRAP" "IGNORE-ME-SC-NUMBER"
2676                "IMMEDIATE-CHARACTER-SC-NUMBER" "IMMEDIATE-SAP-SC-NUMBER"
2677                "IMMEDIATE-SC-NUMBER"
2678                #!+inline-constants "CANONICALIZE-INLINE-CONSTANT"
2679                #!+inline-constants "INLINE-CONSTANT-VALUE"
2680                #!+inline-constants "EMIT-CONSTANT-SEGMENT-HEADER"
2681                #!+inline-constants "SORT-INLINE-CONSTANTS"
2682                #!+inline-constants "EMIT-INLINE-CONSTANT"
2683                "INSTANCE-HEADER-WIDETAG" "INSTANCE-POINTER-LOWTAG"
2684                "INSTANCE-SLOTS-OFFSET" "INSTANCE-USAGE"
2685                "INTERIOR-REG-SC-NUMBER" "INTERNAL-ERROR-ARGS"
2686                "INTERRUPTED-FLAG" "LIST-ALLOCATED-OBJECTS" "LIST-POINTER-LOWTAG"
2687                ;; FIXME: Possibly these other parameters (see
2688                ;; compiler/{x86,sparc}/parms.lisp) should be defined
2689                ;; conditionally on #!+LONG-FLOAT)
2690                "LONG-FLOAT-BIAS" "LONG-FLOAT-DIGITS" "LONG-FLOAT-EXPONENT-BYTE"
2691                "LONG-FLOAT-HIDDEN-BIT" "LONG-FLOAT-NORMAL-EXPONENT-MAX"
2692                "LONG-FLOAT-NORMAL-EXPONENT-MIN" "LONG-FLOAT-SIGNIFICAND-BYTE"
2693                #!+long-float "LONG-FLOAT-SIZE"
2694                "LONG-FLOAT-TRAPPING-NAN-BIT"
2695                #!+long-float "LONG-FLOAT-WIDETAG"
2696                #!+long-float "LONG-FLOAT-VALUE-SLOT"
2697                #!+long-float "LONG-REG-SC-NUMBER"
2698                #!+long-float "LONG-STACK-SC-NUMBER"
2699                "LOWTAG-LIMIT" "LOWTAG-MASK"
2700                "LRA-SAVE-OFFSET"
2701                "MEMORY-USAGE" "MOST-POSITIVE-COST"
2702                "N-LOWTAG-BITS"
2703                "N-FIXNUM-TAG-BITS"
2704                "N-FIXNUM-BITS"
2705                "N-POSITIVE-FIXNUM-BITS"
2706                "NEGATIVE-IMMEDIATE-SC-NUMBER"
2707                "NFP-SAVE-OFFSET"
2708                "NON-DESCRIPTOR-REG-SC-NUMBER"
2709                "NULL-SC-NUMBER"
2710                "OBJECT-NOT-LIST-TRAP" "OBJECT-NOT-INSTANCE-TRAP"
2711                "OCFP-SAVE-OFFSET"
2712                "ODD-FIXNUM-LOWTAG"
2713                "OFFSET-STATIC-SYMBOL"
2714                "OTHER-IMMEDIATE-0-LOWTAG"
2715                "OTHER-IMMEDIATE-1-LOWTAG"
2716                ;; FIXME: 32/64-bit issues
2717                "OTHER-IMMEDIATE-2-LOWTAG"
2718                "OTHER-IMMEDIATE-3-LOWTAG"
2719                "OTHER-POINTER-LOWTAG"
2720                "PAD0-LOWTAG" "PAD1-LOWTAG" "PAD2-LOWTAG"
2721                "PAD3-LOWTAG" "PAD4-LOWTAG" "PAD5-LOWTAG"
2722                "PAD-DATA-BLOCK" "PENDING-INTERRUPT-TRAP"
2723                "PRIMITIVE-OBJECT" "PRIMITIVE-OBJECT-WIDETAG"
2724                "PRIMITIVE-OBJECT-LOWTAG" "PRIMITIVE-OBJECT-NAME"
2725                "PRIMITIVE-OBJECT-OPTIONS" "PRIMITIVE-OBJECT-P"
2726                "PRIMITIVE-OBJECT-SIZE" "PRIMITIVE-OBJECT-SLOTS"
2727                "PRIMITIVE-OBJECT-VARIABLE-LENGTH-P"
2728                "PRINT-ALLOCATED-OBJECTS"
2729                "RANDOM-IMMEDIATE-SC-NUMBER" "RATIO-DENOMINATOR-SLOT"
2730                "RATIO-NUMERATOR-SLOT" "RATIO-SIZE" "RATIO-WIDETAG"
2731                "*READ-ONLY-SPACE-FREE-POINTER*"
2732                "REGISTER-SAVE-PENALTY" "RETURN-PC-HEADER-WIDETAG"
2733                "RETURN-PC-RETURN-POINT-OFFSET" "RETURN-PC-SAVE-OFFSET"
2734                "SAETP-CTYPE" "SAETP-INITIAL-ELEMENT-DEFAULT"
2735                "SAETP-N-BITS" "SAETP-TYPECODE" "SAETP-PRIMITIVE-TYPE-NAME"
2736                "SAETP-N-PAD-ELEMENTS" "SAETP-SPECIFIER"
2737                "SAETP-COMPLEX-TYPECODE" "SAETP-IMPORTANCE"
2738                "SAETP-FIXNUM-P"
2739                "VALID-BIT-BASH-SAETP-P"
2740                "*SPECIALIZED-ARRAY-ELEMENT-TYPE-PROPERTIES*"
2741                "SANCTIFY-FOR-EXECUTION"
2742                "SAP-POINTER-SLOT" "SAP-REG-SC-NUMBER" "SAP-SIZE"
2743                "SAP-STACK-SC-NUMBER" "SAP-WIDETAG"
2744                "SIGFPE-HANDLER" "SIGNED-REG-SC-NUMBER" "SIGNED-STACK-SC-NUMBER"
2745                "SIGNED-WORD"
2746                "SIMPLE-ARRAY-COMPLEX-DOUBLE-FLOAT-WIDETAG"
2747                #!+long-float "SIMPLE-ARRAY-COMPLEX-LONG-FLOAT-WIDETAG"
2748                "SIMPLE-ARRAY-COMPLEX-SINGLE-FLOAT-WIDETAG"
2749                "SIMPLE-ARRAY-DOUBLE-FLOAT-WIDETAG"
2750                #!+long-float "SIMPLE-ARRAY-LONG-FLOAT-WIDETAG"
2751                "SIMPLE-ARRAY-NIL-WIDETAG"
2752                "SIMPLE-ARRAY-SINGLE-FLOAT-WIDETAG"
2753                "SIMPLE-ARRAY-WIDETAG"
2754                "SIMPLE-ARRAY-UNSIGNED-BYTE-15-WIDETAG"
2755                "SIMPLE-ARRAY-UNSIGNED-BYTE-16-WIDETAG"
2756                "SIMPLE-ARRAY-UNSIGNED-BYTE-2-WIDETAG"
2757                "SIMPLE-ARRAY-UNSIGNED-FIXNUM-WIDETAG"
2758                "SIMPLE-ARRAY-UNSIGNED-BYTE-31-WIDETAG"
2759                "SIMPLE-ARRAY-UNSIGNED-BYTE-32-WIDETAG"
2760                "SIMPLE-ARRAY-UNSIGNED-BYTE-63-WIDETAG"
2761                "SIMPLE-ARRAY-UNSIGNED-BYTE-64-WIDETAG"
2762                "SIMPLE-ARRAY-UNSIGNED-BYTE-4-WIDETAG"
2763                "SIMPLE-ARRAY-UNSIGNED-BYTE-7-WIDETAG"
2764                "SIMPLE-ARRAY-UNSIGNED-BYTE-8-WIDETAG"
2765                "SIMPLE-ARRAY-SIGNED-BYTE-16-WIDETAG"
2766                "SIMPLE-ARRAY-FIXNUM-WIDETAG"
2767                "SIMPLE-ARRAY-SIGNED-BYTE-32-WIDETAG"
2768                "SIMPLE-ARRAY-SIGNED-BYTE-64-WIDETAG"
2769                "SIMPLE-ARRAY-SIGNED-BYTE-8-WIDETAG"
2770                "SIMPLE-BIT-VECTOR-WIDETAG"
2771                "SIMPLE-BASE-STRING-WIDETAG"
2772                #!+sb-unicode "SIMPLE-CHARACTER-STRING-WIDETAG"
2773                "SIMPLE-VECTOR-WIDETAG" "SINGLE-FLOAT-BIAS"
2774                "SINGLE-FLOAT-DIGITS" "SINGLE-FLOAT-EXPONENT-BYTE"
2775                "SINGLE-FLOAT-HIDDEN-BIT" "SINGLE-FLOAT-NORMAL-EXPONENT-MAX"
2776                "SINGLE-FLOAT-NORMAL-EXPONENT-MIN" "SINGLE-FLOAT-SIGNIFICAND-BYTE"
2777                "SINGLE-FLOAT-SIZE" "SINGLE-FLOAT-TRAPPING-NAN-BIT"
2778                "SINGLE-FLOAT-WIDETAG" "SINGLE-FLOAT-VALUE-SLOT"
2779                "SINGLE-INT-CARG-REG-SC-NUMBER"
2780                "SINGLE-REG-SC-NUMBER" "SINGLE-STACK-SC-NUMBER"
2781                "SINGLE-STEP-AROUND-TRAP"
2782                "SINGLE-STEP-BEFORE-TRAP"
2783                "SINGLE-VALUE-RETURN-BYTE-OFFSET" "SLOT-DOCS"
2784                "SLOT-LENGTH" "SLOT-NAME" "SLOT-OFFSET" "SLOT-OPTIONS"
2785                "SLOT-REST-P" "*STATIC-FUNS*" "STATIC-FUN-OFFSET"
2786                "STATIC-SYMBOL-OFFSET" "STATIC-SYMBOL-P"
2787                "*STATIC-SPACE-FREE-POINTER*" "*STATIC-SYMBOLS*"
2788                "STRUCTURE-USAGE"
2789                "SYMBOL-HASH-SLOT" "SYMBOL-HEADER-WIDETAG" "SYMBOL-NAME-SLOT"
2790                "SYMBOL-PACKAGE-SLOT" "SYMBOL-PLIST-SLOT"
2791                "SYMBOL-SIZE" "SYMBOL-UNUSED-SLOT" "SYMBOL-VALUE-SLOT"
2792                "*BINDING-STACK-START*"
2793                "*CONTROL-STACK-START*" "*CONTROL-STACK-END*"
2794                "CONTROL-STACK-POINTER-VALID-P"
2795                "DYNAMIC-SPACE-START" "DYNAMIC-SPACE-END"
2796                #!+gencgc "MAX-DYNAMIC-SPACE-END"
2797                #!+c-stack-is-control-stack "ALTERNATE-SIGNAL-STACK-START"
2798                #!-gencgc "DYNAMIC-0-SPACE-START"
2799                #!-gencgc "DYNAMIC-0-SPACE-END"
2800                #!-gencgc "DYNAMIC-1-SPACE-START"
2801                #!-gencgc "DYNAMIC-1-SPACE-END"
2802                "READ-ONLY-SPACE-START" "READ-ONLY-SPACE-END"
2803                "TARGET-BYTE-ORDER" "TARGET-HEAP-ADDRESS-SPACE"
2804                "STATIC-SPACE-START" "STATIC-SPACE-END"
2805                #!+linkage-table "LINKAGE-TABLE-SPACE-START"
2806                #!+linkage-table "LINKAGE-TABLE-SPACE-END"
2807                #!+linkage-table "LINKAGE-TABLE-ENTRY-SIZE"
2808                "TLS-SIZE"
2809                "TRACE-TABLE-CALL-SITE"
2810                "TRACE-TABLE-FUN-EPILOGUE" "TRACE-TABLE-FUN-PROLOGUE"
2811                "TRACE-TABLE-NORMAL" "N-WIDETAG-BITS" "WIDETAG-MASK"
2812                "UNBOUND-MARKER-WIDETAG"
2813                "NO-TLS-VALUE-MARKER-WIDETAG"
2814                "UNSIGNED-IMMEDIATE-SC-NUMBER"
2815                "UNSIGNED-REG-SC-NUMBER" "UNSIGNED-STACK-SC-NUMBER"
2816                "UNWIND-BLOCK-CURRENT-CODE-SLOT" "UNWIND-BLOCK-CURRENT-CONT-SLOT"
2817                "UNWIND-BLOCK-CURRENT-UWP-SLOT" "UNWIND-BLOCK-ENTRY-PC-SLOT"
2818                "UNWIND-BLOCK-SIZE" "VALUE-CELL-HEADER-WIDETAG" "VALUE-CELL-SIZE"
2819                "VALUE-CELL-VALUE-SLOT" "VECTOR-DATA-OFFSET" "VECTOR-LENGTH-SLOT"
2820                "VECTOR-MUST-REHASH-SUBTYPE" "VECTOR-NORMAL-SUBTYPE"
2821                "VECTOR-VALID-HASHING-SUBTYPE"
2822                "WEAK-POINTER-BROKEN-SLOT" "WEAK-POINTER-NEXT-SLOT"
2823                "WEAK-POINTER-SIZE" "WEAK-POINTER-WIDETAG"
2824                "WEAK-POINTER-VALUE-SLOT"
2825                "N-WORD-BITS" "N-WORD-BYTES" "N-MACHINE-WORD-BITS"
2826                "WORD-REG-SC-NUMBER" "WORD-SHIFT"
2827                #!+win32 "CONTEXT-RESTORE-TRAP"
2828                "ZERO-SC-NUMBER"))
2829
2830    #s(sb-cold:package-data
2831       :name "SB!WALKER"
2832       :doc "internal: a code walker used by PCL"
2833       :use ("CL" "SB!INT" "SB!EXT")
2834       :export ("DEFINE-WALKER-TEMPLATE"
2835                "WALK-FORM"
2836                "*WALK-FORM-EXPAND-MACROS-P*"
2837                "VAR-LEXICAL-P" "VAR-SPECIAL-P"
2838                "VAR-GLOBALLY-SPECIAL-P"
2839                "*VAR-DECLARATIONS*" "VAR-DECLARATION"
2840
2841                ;; These were exported from the original PCL version of this
2842                ;; package, but aren't used in SBCL.
2843                ;;"NESTED-WALK-FORM" "MACROEXPAND-ALL"
2844                ))
2845
2846    #!+sb-eval
2847    #s(sb-cold:package-data
2848       :name "SB!EVAL"
2849       :doc "internal: the evaluator implementation used to execute code without compiling it."
2850       :use ("CL" "SB!KERNEL" "SB!EXT")
2851       :reexport ("*EVAL-CALLS*")
2852       :export ("INTERPRETED-FUNCTION"
2853                "INTERPRETED-FUNCTION-P"
2854                "INTERPRETED-FUNCTION-NAME"
2855                "INTERPRETED-FUNCTION-DEBUG-NAME"
2856                "INTERPRETED-FUNCTION-LAMBDA-LIST"
2857                "INTERPRETED-FUNCTION-DEBUG-LAMBDA-LIST"
2858                "INTERPRETED-FUNCTION-DECLARATIONS"
2859                "INTERPRETED-FUNCTION-DOCUMENTATION"
2860                "INTERPRETED-FUNCTION-BODY"
2861                "INTERPRETED-FUNCTION-SOURCE-LOCATION"
2862                "EVAL-IN-ENVIRONMENT"
2863                "MAKE-NULL-ENVIRONMENT"
2864                "EVAL-IN-NATIVE-ENVIRONMENT"
2865                "PREPARE-FOR-COMPILE"
2866                "COUNT-EVAL-CALLS"
2867                "*EVAL-LEVEL*"))
2868
2869    #!+win32
2870    #s(sb-cold:package-data
2871       :name "SB!WIN32"
2872       :doc "private: a wrapper layer for Win32 functions needed by
2873 SBCL itself"
2874       :use ("CL" "SB!ALIEN" "SB!EXT" "SB!INT" "SB!SYS")
2875       :export ("BOOL"
2876                "CLOSE-HANDLE"
2877                "CREATE-FILE"
2878                "CREATE-FILE-MAPPING"
2879                "DWORD"
2880                "FD-CLEAR-INPUT"
2881                "FD-LISTEN"
2882                "FILE-CREATE-ALWAYS"
2883                "FILE-CREATE-NEW"
2884                "FILE-OPEN-ALWAYS"
2885                "FILE-OPEN-EXISTING"
2886                "FILE-TRUNCATE-EXISTING"
2887                "FLUSH-CONSOLE-INPUT-BUFFER"
2888                "FLUSH-VIEW-OF-FILE"
2889                "FORMAT-MESSAGE"
2890                "GET-FILE-ATTRIBUTES"
2891                "GET-LAST-ERROR"
2892                "GET-OSFHANDLE"
2893                "GET-VERSION-EX"
2894                "HANDLE"
2895                "HANDLE-CLEAR-INPUT"
2896                "HANDLE-LISTEN"
2897                "INT-PTR"
2898                "INVALID-HANDLE"
2899                "MAP-VIEW-OF-FILE"
2900                "MILLISLEEP"
2901                "PEEK-CONSOLE-INPUT"
2902                "PEEK-NAMED-PIPE"
2903                "READ-FILE"
2904                "UNMAP-VIEW-OF-FILE"
2905                "WRITE-FILE"
2906                "WITH-PROCESS-TIMES")))