0.8.0.8:
[sbcl.git] / package-data-list.lisp-expr
index 60c1569..63ba1ba 100644 (file)
@@ -2,10 +2,9 @@
 
 ;;;; the specifications of target packages, except for a few things
 ;;;; which are handled elsewhere by other mechanisms:
-;;;;   * the creation of the trivial SB-SLOT-ACCESSOR-NAME package
-;;;;   * any SHADOWing and nickname hackery
+;;;;   * any SHADOWing and nickname hackery;
 ;;;;   * the standard, non-SBCL-specific packages COMMON-LISP,
-;;;;     COMMON-LISP-USER, and KEYWORD
+;;;;     COMMON-LISP-USER, and KEYWORD.
 ;;;;
 ;;;; The packages are named SB!FOO here and elsewhere in
 ;;;; cross-compilation, in order to avoid collision with possible
@@ -232,6 +231,8 @@ of SBCL which maintained the CMU-CL-style split into two packages.)"
               "PHYSENV-DEBUG-LIVE-TN" "PHYSENV-LIVE-TN"
               "FAST-SYMBOL-VALUE" "FOLDABLE"
               "FORCE-TN-TO-STACK"
+             "FUN-INFO-DERIVE-TYPE" "FUN-INFO-IR2-CONVERT"
+             "FUN-INFO-LTN-ANNOTATE" "FUN-INFO-OPTIMIZER"
              "GET-VECTOR-SUBTYPE"
               "HALT"
              "IF-EQ" "INLINE-SYNTACTIC-CLOSURE-LAMBDA"
@@ -269,8 +270,9 @@ of SBCL which maintained the CMU-CL-style split into two packages.)"
               "SC-OFFSET-OFFSET" "SC-OFFSET-SCN" "SC-OR-LOSE" "SC-P" "SC-SB"
               "SET-UNWIND-PROTECT" "SET-VECTOR-SUBTYPE"
               "SETUP-CLOSURE-ENVIRONMENT" "SETUP-ENVIRONMENT"
-              "SPECIFY-SAVE-TN" "INSTANCE-REF"
-              "INSTANCE-SET" "TAIL-CALL" "TAIL-CALL-NAMED"
+              "SOURCE-TRANSFORM-LAMBDA"
+              "SPECIFY-SAVE-TN"
+              "TAIL-CALL" "TAIL-CALL-NAMED"
               "TAIL-CALL-VARIABLE" "TEMPLATE-OR-LOSE"
               "TN" "TN-OFFSET" "TN-P" "TN-REF" "TN-REF-ACROSS" "TN-REF-LOAD-TN"
               "TN-REF-NEXT" "TN-REF-NEXT-REF" "TN-REF-P" "TN-REF-TARGET"
@@ -516,7 +518,7 @@ like *STACK-TOP-HINT* and unsupported stuff like *TRACED-FUN-LIST*."
     :export (;; Information about how the program was invoked is
              ;; nonstandard but very useful.
              "*POSIX-ARGV*" "POSIX-GETENV" "POSIX-ENVIRON"
-
+                           
              ;; People have various good reasons to mess with the GC.
              "*AFTER-GC-HOOKS*" "*BEFORE-GC-HOOKS*"
              "*GC-NOTIFY-AFTER*" "*GC-NOTIFY-BEFORE*" "*GC-NOTIFY-STREAM*"
@@ -565,6 +567,9 @@ like *STACK-TOP-HINT* and unsupported stuff like *TRACED-FUN-LIST*."
              "*USE-IMPLEMENTATION-TYPES*"
              "*DERIVE-FUNCTION-TYPES*"
 
+             ;; ..and inspector of compiler policy
+             "DESCRIBE-COMPILER-POLICY"
+
              ;; a special form for breaking out of our "declarations
              ;; are assertions" default
              "TRULY-THE"
@@ -612,7 +617,9 @@ like *STACK-TOP-HINT* and unsupported stuff like *TRACED-FUN-LIST*."
 
              ;; miscellaneous useful supported extensions
              "QUIT"
-
+            "*MODULE-PROVIDER-FUNCTIONS*"
+            "WITH-TIMEOUT" "TIMEOUT"
+            
              ;; RUN-PROGRAM is not only useful for users, but also
              ;; useful to implement parts of SBCL itself, so we're
              ;; going to have to implement it anyway, so we might
@@ -727,18 +734,22 @@ retained, possibly temporariliy, because it might be used internally."
 
              ;; miscellaneous non-standard but handy user-level functions..
              "ASSQ" "DELQ" "MEMQ" "POSQ" "NEQ"
+             "ADJUST-LIST"
              "%FIND-PACKAGE-OR-LOSE" "FIND-UNDELETED-PACKAGE-OR-LOSE"
              "SANE-PACKAGE"
              "CYCLIC-LIST-P"
             "COMPOUND-OBJECT-P"
              "SWAPPED-ARGS-FUN"
+             "AND/TYPE" "NOT/TYPE"
              "ANY/TYPE" "EVERY/TYPE"
+            "EQUAL-BUT-NO-CAR-RECURSION"
              "TYPE-BOUND-NUMBER"
              "CONSTANTLY-T" "CONSTANTLY-NIL" "CONSTANTLY-0"
              "PSXHASH"
              "%BREAK"
             "NTH-BUT-WITH-SANE-ARG-ORDER"
             "DEPRECATION-WARNING"
+            "BIT-VECTOR-="
 
              ;; ..and macros..
              "COLLECT"
@@ -759,6 +770,7 @@ retained, possibly temporariliy, because it might be used internally."
              "INDEX" "LOAD/STORE-INDEX"
             "SIGNED-BYTE-WITH-A-BITE-OUT"
             "UNSIGNED-BYTE-WITH-A-BITE-OUT"
+             "SFUNCTION"
              ;; ..and type predicates
              "INSTANCEP"
              "DOUBLE-FLOAT-P"
@@ -835,6 +847,7 @@ retained, possibly temporariliy, because it might be used internally."
              "C-STRINGS->STRING-LIST"
 
              ;; misc. utilities used internally
+            "DEFINE-FUNCTION-NAME-SYNTAX" "VALID-FUNCTION-NAME-P" ; should be SB!EXT? 
              "LEGAL-FUN-NAME-P" "LEGAL-FUN-NAME-OR-TYPE-ERROR"
              "FUN-NAME-BLOCK-NAME"
             "FUN-NAME-INLINE-EXPANSION"
@@ -845,13 +858,14 @@ retained, possibly temporariliy, because it might be used internally."
              "PROPER-LIST-OF-LENGTH-P"
              "LIST-OF-LENGTH-AT-LEAST-P"
              "LIST-WITH-LENGTH-P"
+             "SINGLETON-P"
              "READ-SEQUENCE-OR-DIE"
              "RENAME-KEY-ARGS"
              "MISSING-ARG"
              "UNIX-NAMESTRING" ; FIXME: perhaps belongs in package SB!UNIX
              "FEATUREP"
              "FLUSH-STANDARD-OUTPUT-STREAMS"
-             "MAKE-GENSYM-LIST"
+             "WITH-UNIQUE-NAMES" "MAKE-GENSYM-LIST" 
              "ABOUT-TO-MODIFY-SYMBOL-VALUE"
             "SYMBOL-SELF-EVALUATING-P"
              "PRINT-PRETTY-ON-STREAM-P"
@@ -896,7 +910,12 @@ retained, possibly temporariliy, because it might be used internally."
              "!BEGIN-COLLECTING-COLD-INIT-FORMS"
             "!COLD-INIT-FORMS"
             "COLD-FSET"
-             "!DEFUN-FROM-COLLECTED-COLD-INIT-FORMS"))
+             "!DEFUN-FROM-COLLECTED-COLD-INIT-FORMS"
+
+            ;; hooks for contrib/ stuff we're insufficiently sure
+            ;; about to add to SB!EXT
+            "*REPL-PROMPT-FUN*"
+            "*REPL-READ-FORM-FUN*"))
 
  ;; FIXME: This package is awfully huge. It'd probably be good to
  ;; split it. There's at least one natural way to split it: the
@@ -935,7 +954,8 @@ is a good idea, but see SB-SYS re. blurring of boundaries."
              "%ARRAY-FILL-POINTER-P"
              "%ASIN" "%ASINH"
              "%ATAN" "%ATAN2" "%ATANH"
-             "%CALLER-FRAME-AND-PC" "%CHECK-BOUND" "%CLOSURE-FUN"
+             "%CALLER-FRAME-AND-PC" "%CHECK-BOUND"
+            "%CHECK-VECTOR-SEQUENCE-BOUNDS" "%CLOSURE-FUN"
              "%CLOSURE-INDEX-REF" "%COS" "%COS-QUICK"
              "%COSH" "%DATA-VECTOR-AND-INDEX"
             "%DEPOSIT-FIELD"
@@ -1000,6 +1020,7 @@ is a good idea, but see SB-SYS re. blurring of boundaries."
              "BINDING-STACK-POINTER-SAP" "BIT-BASH-COPY"
              "BIT-INDEX" "BOGUS-ARG-TO-VALUES-LIST-ERROR"
              "BOOLE-CODE"
+            "BOUNDING-INDICES-BAD-ERROR"
              "BYTE-SPECIFIER"
              "%BYTE-BLT"
              "CALLABLE" "CASE-BODY-ERROR"
@@ -1010,7 +1031,8 @@ is a good idea, but see SB-SYS re. blurring of boundaries."
              "CODE-DEBUG-INFO" "CODE-HEADER-REF" "CODE-HEADER-SET"
              "CODE-INSTRUCTIONS"
              "COERCE-TO-FUN" "COERCE-TO-LEXENV"
-             "COERCE-TO-LIST" "COERCE-TO-VECTOR"
+             "COERCE-TO-LIST" "COERCE-TO-VALUES"
+             "COERCE-TO-VECTOR"
              "*COLD-INIT-COMPLETE-P*"
              "COMPLEX-DOUBLE-FLOAT-P"
              "COMPLEX-FLOAT-P"
@@ -1027,6 +1049,7 @@ is a good idea, but see SB-SYS re. blurring of boundaries."
              "COPY-BYTE-VECTOR-TO-SYSTEM-AREA"
              "CSUBTYPEP" "CTYPE" "TYPE-HASH-VALUE"
              "CTYPE-OF" "CTYPE-P" "CTYPEP" "CURRENT-FP" "CURRENT-SP"
+             "CURRENT-DYNAMIC-SPACE-START"
              "DATA-VECTOR-REF" "DATA-VECTOR-SET" "DECODE-DOUBLE-FLOAT"
              #!+long-float "DECODE-LONG-FLOAT"
             "DECODE-SINGLE-FLOAT"
@@ -1040,7 +1063,6 @@ is a good idea, but see SB-SYS re. blurring of boundaries."
              "FLOAT-WAIT"
              "DYNAMIC-SPACE-FREE-POINTER" "DYNAMIC-USAGE"
             "EFFECTIVE-FIND-POSITION-TEST" "EFFECTIVE-FIND-POSITION-KEY"
-            "END-TOO-LARGE-ERROR"
              "ERROR-NUMBER-OR-LOSE"
              "FAILED-%WITH-ARRAY-DATA"
              "FDEFINITION-OBJECT"
@@ -1080,15 +1102,20 @@ is a good idea, but see SB-SYS re. blurring of boundaries."
              "JUST-DUMP-IT-NORMALLY"
              "KEY-INFO" "KEY-INFO-NAME"
              "KEY-INFO-P" "KEY-INFO-TYPE"
-             "LAYOUT-DEPTHOID"
-             "LAYOUT-INVALID-ERROR" "LEXENV"
+             "LAYOUT-DEPTHOID" "LAYOUT-INVALID-ERROR"
+            "LEXENV" "LEXENV-DESIGNATOR"
              "LINE-LENGTH"
              "ANSI-STREAM"
              "ANSI-STREAM-BIN" "ANSI-STREAM-BOUT"
+            "ANSI-STREAM-CLOSE"
+            "ANSI-STREAM-ELEMENT-TYPE"
              "ANSI-STREAM-IN" "ANSI-STREAM-IN-BUFFER"
              "ANSI-STREAM-IN-INDEX"
+            "ANSI-STREAM-INPUT-STREAM-P"
              "ANSI-STREAM-MISC" "ANSI-STREAM-N-BIN"
+            "ANSI-STREAM-OPEN-STREAM-P"
              "ANSI-STREAM-OUT" "ANSI-STREAM-SOUT"
+            "ANSI-STREAM-OUTPUT-STREAM-P"
              "LIST-TO-VECTOR*" 
             "LOGICAL-HOST" "LOGICAL-HOST-DESIGNATOR"
              #!+long-float "LONG-FLOAT-EXPONENT"
@@ -1107,15 +1134,20 @@ is a good idea, but see SB-SYS re. blurring of boundaries."
              "MAKE-NULL-LEXENV" "MAKE-NULL-INTERACTIVE-LEXENV"
             "MAKE-NUMERIC-TYPE"
              "MAKE-SINGLE-FLOAT" "MAKE-SPECIALIZABLE-ARRAY"
+            "MAKE-UNPORTABLE-FLOAT"
              "%MAKE-INSTANCE"
+             "MAKE-SHORT-VALUES-TYPE"
+             "MAKE-SINGLE-VALUE-TYPE"
             "MAKE-VALUE-CELL"
              "MAKE-VALUES-TYPE"
-             "MAYBE-GC" "MEMBER-TYPE" "MEMBER-TYPE-MEMBERS"
+             "MEMBER-TYPE" "MEMBER-TYPE-MEMBERS"
              "MEMBER-TYPE-P" "MERGE-BITS" "MODIFIED-NUMERIC-TYPE"
              "MUTATOR-SELF"
              "NAMED-TYPE" "NAMED-TYPE-NAME" "NAMED-TYPE-P"
              "NATIVE-BYTE-ORDER" "NEGATE"
-             "NEVER-SUBTYPEP" "NIL-FUN-RETURNED-ERROR"
+            "NEGATION-TYPE" "NEGATION-TYPE-TYPE"
+             "NEVER-SUBTYPEP" "NIL-ARRAY-ACCESSED-ERROR"
+            "NIL-FUN-RETURNED-ERROR"
              "NOT-<=-ERROR" "NOT-=-ERROR"
              "NOT-DUMPED-AT-ALL"
              "NUMERIC-CONTAGION" "NUMERIC-TYPE"
@@ -1152,6 +1184,7 @@ is a good idea, but see SB-SYS re. blurring of boundaries."
              "OBJECT-NOT-SIMPLE-ARRAY-DOUBLE-FLOAT-ERROR"
              "OBJECT-NOT-SIMPLE-ARRAY-ERROR"
              #!+long-float "OBJECT-NOT-SIMPLE-ARRAY-LONG-FLOAT-ERROR"
+            "OBJECT-NOT-SIMPLE-ARRAY-NIL-ERROR"
              "OBJECT-NOT-SIMPLE-ARRAY-SINGLE-FLOAT-ERROR"
              "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-16-ERROR"
              "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-2-ERROR"
@@ -1193,6 +1226,7 @@ is a good idea, but see SB-SYS re. blurring of boundaries."
              "SIMPLE-ARRAY-COMPLEX-SINGLE-FLOAT-P"
              "SIMPLE-ARRAY-DOUBLE-FLOAT-P"
             #!+long-float "SIMPLE-ARRAY-LONG-FLOAT-P"
+            "SIMPLE-ARRAY-NIL-P"
              "SIMPLE-ARRAY-P"
              "SIMPLE-ARRAY-SINGLE-FLOAT-P"
              "SIMPLE-ARRAY-UNSIGNED-BYTE-16-P"
@@ -1214,6 +1248,7 @@ is a good idea, but see SB-SYS re. blurring of boundaries."
              "SPECIFIER-TYPE" "STACK-REF"
              "STREAMLIKE" "STRINGABLE"
              "STRUCTURE-RAW-SLOT-TYPE-AND-SIZE"
+            "SUB-GC"
              "%INSTANCE-LENGTH"
              "%INSTANCE-REF" "%INSTANCE-SET"
              "SYSTEM-AREA-CLEAR"
@@ -1227,6 +1262,7 @@ is a good idea, but see SB-SYS re. blurring of boundaries."
              "TYPE-DIFFERENCE" "TYPE-EXPAND"
              "TYPE-INTERSECTION" "TYPE-INTERSECTION2"
              "TYPE-APPROX-INTERSECTION2"
+             "TYPE-SINGLE-VALUE-P"
              "TYPE-SPECIFIER" "TYPE-UNION" "TYPE/=" "TYPE="
              "TYPES-EQUAL-OR-INTERSECT"
              "UNBOUND-SYMBOL-ERROR" "UNBOXED-ARRAY"
@@ -1240,11 +1276,14 @@ is a good idea, but see SB-SYS re. blurring of boundaries."
             "VALUES-SPECIFIER-TYPE"
              "VALUES-SPECIFIER-TYPE-CACHE-CLEAR" "VALUES-SUBTYPEP"
              "VALUES-TYPE"
-             "VALUES-TYPE-INTERSECTION" "VALUES-TYPE-KEYP"
-             "VALUES-TYPE-KEYWORDS" "VALUES-TYPE-OPTIONAL"
+             "VALUES-TYPE-ERROR"
+             "VALUES-TYPE-INTERSECTION"
+             "VALUES-TYPE-OPTIONAL"
              "VALUES-TYPE-P" "VALUES-TYPE-REQUIRED"
              "VALUES-TYPE-REST" "VALUES-TYPE-UNION"
-             "VALUES-TYPES" "VALUES-TYPES-EQUAL-OR-INTERSECT" "VECTOR-T-P"
+             "VALUES-TYPE-TYPES" "VALUES-TYPES"
+             "VALUES-TYPE-START"
+             "VALUES-TYPES-EQUAL-OR-INTERSECT" "VECTOR-T-P"
              "VECTOR-TO-VECTOR*"
              "VECTOR-OF-CHECKED-LENGTH-GIVEN-LENGTH"
              "WITH-ARRAY-DATA"
@@ -1266,56 +1305,66 @@ is a good idea, but see SB-SYS re. blurring of boundaries."
              "LAYOUT-PURE" "DSD-RAW-TYPE"
              "DEFSTRUCT-DESCRIPTION" "UNDEFINE-STRUCTURE"
              "DD-COPIER" "UNDEFINE-FUN-NAME" "DD-TYPE"
-             "CLASS-STATE" "INSTANCE"
+             "CLASSOID-STATE" "INSTANCE"
              "*TYPE-SYSTEM-INITIALIZED*" "FIND-LAYOUT"
              "DSD-NAME" "%TYPEP" "DD-RAW-INDEX"
-             "DD-NAME" "CLASS-SUBCLASSES"
-             "CLASS-LAYOUT" "CLASS-%NAME"
+             "DD-NAME" "CLASSOID-SUBCLASSES"
+             "CLASSOID-LAYOUT" "CLASSOID-NAME"
              "DD-RAW-LENGTH" "NOTE-NAME-DEFINED"
              "%CODE-CODE-SIZE" "DD-SLOTS"
+            "DD-INCLUDE" "SLOT-SETTER-LAMBDA-FORM"
              "%IMAGPART" "DSD-ACCESSOR-NAME"
-             "%CODE-DEBUG-INFO" "DSD-%NAME"
-             "LAYOUT-CLASS" "LAYOUT-INVALID"
+             "%CODE-DEBUG-INFO"
+             "LAYOUT-CLASSOID" "LAYOUT-INVALID"
              "%SIMPLE-FUN-NAME" "DSD-TYPE" "%INSTANCEP"
              "DEFSTRUCT-SLOT-DESCRIPTION" "%SIMPLE-FUN-ARGLIST"
              "%SIMPLE-FUN-NEXT" "LAYOUT-CLOS-HASH-LENGTH" "DD-PREDICATE-NAME"
-             "CLASS-PROPER-NAME" "%NOTE-TYPE-DEFINED" "LAYOUT-INFO"
+             "CLASSOID-PROPER-NAME" "%NOTE-TYPE-DEFINED" "LAYOUT-INFO"
              "%SET-INSTANCE-LAYOUT" "DD-DEFAULT-CONSTRUCTOR"
              "LAYOUT-OF" "%SIMPLE-FUN-SELF" "%REALPART"
-             "STRUCTURE-CLASS-P" "DSD-INDEX"
+             "STRUCTURE-CLASSOID-P" "DSD-INDEX"
+            "STRUCTURE-CLASSOID"
              "%INSTANCE-LAYOUT" "LAYOUT-CLOS-HASH"
              "%SIMPLE-FUN-TYPE" "PROCLAIM-AS-FUN-NAME"
              "BECOME-DEFINED-FUN-NAME"
-             "%NUMERATOR" "CLASS-TYPEP"
+             "%NUMERATOR" "CLASSOID-TYPEP"
              "DSD-READ-ONLY"
+            "DSD-DEFAULT"
              "LAYOUT-INHERITS" "DD-LENGTH" "%CODE-ENTRY-POINTS"
              "%DENOMINATOR"
-             "MAKE-STANDARD-CLASS"
-             "CLASS-CELL-TYPEP" 
-             "FIND-CLASS-CELL" "EXTRACT-FUN-TYPE"
-             "FUNCALLABLE-STRUCTURE-CLASS"
+
+            "STANDARD-CLASSOID"
+            "CLASSOID-OF"
+             "MAKE-STANDARD-CLASSOID"
+             "CLASSOID-CELL-TYPEP" 
+             "FIND-CLASSOID-CELL" "EXTRACT-FUN-TYPE"
+             "FUNCALLABLE-STRUCTURE-CLASSOID"
              "%RANDOM-DOUBLE-FLOAT"
             #!+long-float "%RANDOM-LONG-FLOAT"
              "%RANDOM-SINGLE-FLOAT"
-             "RANDOM-PCL-CLASS" 
+             "RANDOM-PCL-CLASSOID" 
              "%FUNCALLABLE-INSTANCE-INFO" "RANDOM-CHUNK"
-             "MAKE-FUNCALLABLE-STRUCTURE-CLASS" "LAYOUT-CLOS-HASH-MAX"
-             "CLASS-CELL-NAME" "BUILT-IN-CLASS-DIRECT-SUPERCLASSES"
+             "MAKE-FUNCALLABLE-STRUCTURE-CLASSOID" "LAYOUT-CLOS-HASH-MAX"
+             "CLASSOID-CELL-NAME" "BUILT-IN-CLASSOID-DIRECT-SUPERCLASSES"
+            "BUILT-IN-CLASSOID-TRANSLATION"
              "RANDOM-LAYOUT-CLOS-HASH"
-             "CLASS-PCL-CLASS" "FUNCALLABLE-STRUCTURE"
+             "CLASSOID-PCL-CLASS" "FUNCALLABLE-STRUCTURE"
              "FUNCALLABLE-INSTANCE-FUN"
              "%FUNCALLABLE-INSTANCE-LAYOUT"
-             "BASIC-STRUCTURE-CLASS" 
-             "CLASS-CELL-CLASS"
-             "FUNCALLABLE-STRUCTURE-CLASS-P" "REGISTER-LAYOUT"
+             "BASIC-STRUCTURE-CLASSOID" 
+             "CLASSOID-CELL-CLASSOID"
+             "FUNCALLABLE-STRUCTURE-CLASSOID-P" "REGISTER-LAYOUT"
              "FUNCALLABLE-INSTANCE" "RANDOM-FIXNUM-MAX"
-             "MAKE-RANDOM-PCL-CLASS" "INSTANCE-LAMBDA"
+             "MAKE-RANDOM-PCL-CLASSOID" "INSTANCE-LAMBDA"
              "%FUNCALLABLE-INSTANCE-LEXENV" "%MAKE-SYMBOL"
              "%FUNCALLABLE-INSTANCE-FUN" "SYMBOL-HASH"
 
-             "MAKE-UNDEFINED-CLASS" "CLASS-DIRECT-SUPERCLASSES" "MAKE-LAYOUT"
-             "REDEFINE-LAYOUT-WARNING" "SLOT-CLASS"
-             "INSURED-FIND-CLASS" "ORDER-LAYOUT-INHERITS"
+            "BUILT-IN-CLASSOID"
+            "CONDITION-CLASSOID-P" "CONDITION-CLASSOID-SLOTS"
+             "MAKE-UNDEFINED-CLASSOID" "FIND-CLASSOID" "CLASSOID"
+            "CLASSOID-DIRECT-SUPERCLASSES" "MAKE-LAYOUT"
+             "REDEFINE-LAYOUT-WARNING" "SLOT-CLASSOID"
+             "INSURED-FIND-CLASSOID" "ORDER-LAYOUT-INHERITS"
              "STD-COMPUTE-CLASS-PRECEDENCE-LIST"
 
              ;; symbols from former SB!CONDITIONS
@@ -1324,8 +1373,16 @@ is a good idea, but see SB-SYS re. blurring of boundaries."
              "NAMESTRING-PARSE-ERROR" "NAMESTRING-PARSE-ERROR-OFFSET"
              "DESCRIBE-CONDITION"
 
+            "CONDITION-READER-FUNCTION" "CONDITION-WRITER-FUNCTION"
+            
+            "CONDITION-SLOT-ALLOCATION" "CONDITION-SLOT-DOCUMENTATION"
+            "CONDITION-SLOT-INITARGS" "CONDITION-SLOT-INITFORM"
+            "CONDITION-SLOT-INITFORM-P" "CONDITION-SLOT-NAME"
+            "CONDITION-SLOT-READERS" "CONDITION-SLOT-WRITERS"
+            
              "!COLD-INIT" "!UNINTERN-INIT-ONLY-STUFF"
              "!GLOBALDB-COLD-INIT" "!FDEFN-COLD-INIT"
+            "!FUNCTION-NAMES-COLD-INIT"
              "!TYPE-CLASS-COLD-INIT" "!TYPEDEFS-COLD-INIT"
              "!ALIEN-TYPE-COLD-INIT" "!CLASSES-COLD-INIT"
              "!EARLY-TYPE-COLD-INIT" "!LATE-TYPE-COLD-INIT"
@@ -1357,33 +1414,131 @@ is a good idea, but see SB-SYS re. blurring of boundaries."
              "%ARRAY-TYPEP" "%SET-SAP-REF-DESCRIPTOR"))
 
  #s(sb-cold:package-data
+    :name "SB!THREAD"
+    :use ("CL" "SB!ALIEN" "SB!INT")
+    :doc "public (but low-level): native thread support"
+    :export ("MAKE-THREAD"
+            "MAKE-LISTENER-THREAD" "DESTROY-THREAD" "WITH-RECURSIVE-LOCK"
+            "MUTEX" "MAKE-MUTEX" "GET-MUTEX" "RELEASE-MUTEX" "WITH-MUTEX"
+            "WAITQUEUE" "MAKE-WAITQUEUE" "CONDITION-WAIT" "CONDITION-NOTIFY"
+            "WITH-RECURSIVE-LOCK" "RELEASE-FOREGROUND" "CURRENT-THREAD-ID"))
+ #s(sb-cold:package-data
     :name "SB!LOOP"
     :doc "private: implementation details of LOOP"
     :use ("CL")
     :export ())
 
- #!+mp
  #s(sb-cold:package-data
-    :name "SB!MP"
-    :doc "public (but unstable): multiprocessing support"
-    :export ("*ALL-PROCESSES*" "*CURRENT-PROCESS*"
-             "*CURRENT-STACK-GROUP*" "*INITIAL-STACK-GROUP*"
-             "*MULTI-PROCESSING*" "ALL-PROCESSES"
-             "ATOMIC-DECF" "ATOMIC-INCF" "ATOMIC-POP"
-             "ATOMIC-PUSH" "CURRENT-PROCESS"
-             "DESTROY-PROCESS" "DISABLE-PROCESS"
-             "ENABLE-PROCESS" "INIT-STACK-GROUPS"
-             "LOCK" "MAKE-STACK-GROUP" "MAKE-LOCK"
-             "MAKE-PROCESS" "PROCESS-ACTIVE-P" "PROCESS-ALIVE-P"
-             "PROCESS-IDLE-TIME" "PROCESS-INTERRUPT"
-             "PROCESS-NAME" "PROCESS-PRESET"
-             "PROCESS-REAL-TIME" "PROCESS-RUN-TIME"
-             "PROCESS-STATE" "PROCESS-WAIT-UNTIL-FD-USABLE"
-             "PROCESS-WAIT" "PROCESS-WAIT-WITH-TIMEOUT"
-             "PROCESS-WHOSTATE" "PROCESS-YIELD" "PROCESSP"
-             "RESTART-PROCESS" "SHOW-PROCESSES"
-             "STACK-GROUP-RESUME" "WITHOUT-SCHEDULING"
-             "WITH-LOCK-HELD"))
+    :name "SB!MOP"
+    :doc
+    "public: the MetaObject Protocol interface, as defined by
+The Art of the Metaobject Protocol, by Kiczales, des Rivieres and Bobrow:
+ISBN 0-262-61074-4, with exceptions as noted in the User Manual."
+    :use ("CL" "SB!PCL")
+    :reexport ("ADD-DEPENDENT"
+              "ADD-DIRECT-METHOD"
+              "ADD-DIRECT-SUBCLASS"
+              "ADD-METHOD"
+              "ALLOCATE-INSTANCE"
+              "BUILT-IN-CLASS"
+              "CLASS"
+              "CLASS-DEFAULT-INITARGS"
+              "CLASS-DIRECT-DEFAULT-INITARGS"
+              "CLASS-DIRECT-SLOTS"
+              "CLASS-DIRECT-SUBCLASSES"
+              "CLASS-DIRECT-SUPERCLASSES"
+              "CLASS-FINALIZED-P"
+              "CLASS-NAME"
+              "CLASS-PRECEDENCE-LIST"
+              "CLASS-PROTOTYPE"
+              "CLASS-SLOTS"
+              "COMPUTE-APPLICABLE-METHODS"
+              "COMPUTE-APPLICABLE-METHODS-USING-CLASSES"
+              "COMPUTE-CLASS-PRECEDENCE-LIST"
+              "COMPUTE-DEFAULT-INITARGS"
+              "COMPUTE-DISCRIMINATING-FUNCTION"
+              "COMPUTE-EFFECTIVE-METHOD"
+              "COMPUTE-EFFECTIVE-SLOT-DEFINITION"
+              "COMPUTE-SLOTS"
+              "DIRECT-SLOT-DEFINITION"
+              "DIRECT-SLOT-DEFINITION-CLASS"
+              "EFFECTIVE-SLOT-DEFINITION"
+              "EFFECTIVE-SLOT-DEFINITION-CLASS"
+              "ENSURE-CLASS"
+              "ENSURE-CLASS-USING-CLASS"
+              "ENSURE-GENERIC-FUNCTION"
+              "ENSURE-GENERIC-FUNCTION-USING-CLASS"
+              "EQL-SPECIALIZER"
+              "EQL-SPECIALIZER-OBJECT"
+              "EXTRACT-LAMBDA-LIST"
+              "EXTRACT-SPECIALIZER-NAMES"
+              "FINALIZE-INHERITANCE"
+              "FIND-METHOD-COMBINATION"
+              "FORWARD-REFERENCED-CLASS"
+              "FUNCALLABLE-STANDARD-CLASS"
+              "FUNCALLABLE-STANDARD-INSTANCE-ACCESS"
+              "FUNCALLABLE-STANDARD-OBJECT"
+              "FUNCTION"
+              "GENERIC-FUNCTION"
+              "GENERIC-FUNCTION-ARGUMENT-PRECEDENCE-ORDER"
+              "GENERIC-FUNCTION-DECLARATIONS"
+              "GENERIC-FUNCTION-LAMBDA-LIST"
+              "GENERIC-FUNCTION-METHOD-CLASS"
+              "GENERIC-FUNCTION-METHOD-COMBINATION"
+              "GENERIC-FUNCTION-METHODS"
+              "GENERIC-FUNCTION-NAME"
+              "INTERN-EQL-SPECIALIZER"
+              "MAKE-METHOD-LAMBDA"
+              "MAKE-INSTANCE"
+              "MAP-DEPENDENTS"
+              ;; KLUDGE: See the User Manual
+              ;; "METAOBJECT"
+              "METHOD"
+              "METHOD-COMBINATION"
+              "METHOD-FUNCTION"
+              "METHOD-GENERIC-FUNCTION"
+              "METHOD-LAMBDA-LIST"
+              "METHOD-QUALIFIERS"
+              "METHOD-SPECIALIZERS"
+              "ACCESSOR-METHOD-SLOT-DEFINITION"
+              "READER-METHOD-CLASS"
+              "REMOVE-DEPENDENT"
+              "REMOVE-DIRECT-METHOD"
+              "REMOVE-DIRECT-SUBCLASS"
+              "REMOVE-METHOD"
+              "SET-FUNCALLABLE-INSTANCE-FUNCTION"
+              "SLOT-BOUNDP-USING-CLASS"
+              "SLOT-DEFINITION"
+              "SLOT-DEFINITION-ALLOCATION"
+              "SLOT-DEFINITION-INITARGS"
+              "SLOT-DEFINITION-INITFORM"
+              "SLOT-DEFINITION-INITFUNCTION"
+              "SLOT-DEFINITION-LOCATION"
+              "SLOT-DEFINITION-NAME"
+              "SLOT-DEFINITION-READERS"
+              "SLOT-DEFINITION-WRITERS"
+              "SLOT-DEFINITION-TYPE"
+              "SLOT-MAKUNBOUND-USING-CLASS"
+              "SLOT-VALUE-USING-CLASS"
+              "SPECIALIZER"
+              "SPECIALIZER-DIRECT-GENERIC-FUNCTIONS"
+              "SPECIALIZER-DIRECT-METHODS"
+              "STANDARD-ACCESSOR-METHOD"
+              "STANDARD-CLASS"
+              "STANDARD-DIRECT-SLOT-DEFINITION"
+              "STANDARD-EFFECTIVE-SLOT-DEFINITION"
+              "STANDARD-GENERIC-FUNCTION"
+              "STANDARD-INSTANCE-ACCESS"
+              "STANDARD-METHOD"
+              "STANDARD-OBJECT"
+              "STANDARD-READER-METHOD"
+              "STANDARD-SLOT-DEFINITION"
+              "STANDARD-WRITER-METHOD"
+              "T"
+              "UPDATE-DEPENDENT"
+              "VALIDATE-SUPERCLASS"
+              "WRITER-METHOD-CLASS"))
 
  #s(sb-cold:package-data
     :name "SB!PCL"
@@ -1392,23 +1547,14 @@ is a good idea, but see SB-SYS re. blurring of boundaries."
 extensions, but even they are not guaranteed to be present in
 later versions of SBCL, and the other stuff in here is
 definitely not guaranteed to be present in later versions of SBCL."
-    ;; FIXME: SB-PCL should probably USE-PACKAGE SB-KERNEL, since SB-PCL
-    ;; is built on SB-KERNEL, and in the absence of USE-PACKAGE, it ends
-    ;; up using a thundering herd of explicit prefixes to get to
-    ;; SB-KERNEL symbols. However, it'll probably be too messy to do
-    ;; this until the duplicate SB-PCL:CLASS/CL:CLASS hierarchy kludge
-    ;; is unscrewed, since until it is there are too many things which
-    ;; conflict between the two packages.
-    :use ("CL" "SB!INT" "SB!EXT" "SB!WALKER")
-    :import-from (("SB!KERNEL" "FUNCALLABLE-INSTANCE-P" "%FUN-DOC"
-                   "PACKAGE-DOC-STRING"
-                   "PACKAGE-HASHTABLE-SIZE" "PACKAGE-HASHTABLE-FREE"
-                   "PACKAGE-INTERNAL-SYMBOLS" "PACKAGE-EXTERNAL-SYMBOLS"))
+    :use ("CL" "SB!INT" "SB!EXT" "SB!WALKER" "SB!KERNEL")
+    ;; FIXME: After a little while, these reexports can probably go
+    ;; away, as they're superseded by the use of SB-MOP as the
+    ;; publically-accessible package.
     :reexport ("ADD-METHOD" "ALLOCATE-INSTANCE"
-               "COMPUTE-APPLICABLE-METHODS"
-               "ENSURE-GENERIC-FUNCTION"
-               "MAKE-INSTANCE" "METHOD-QUALIFIERS"
-               "REMOVE-METHOD")
+              "CLASS-NAME" "COMPUTE-APPLICABLE-METHODS"
+               "ENSURE-GENERIC-FUNCTION" "MAKE-INSTANCE"
+              "METHOD-QUALIFIERS" "REMOVE-METHOD")
     :export ("ADD-DEPENDENT"
              "ADD-DIRECT-METHOD"
              "ADD-DIRECT-SUBCLASS"
@@ -1423,21 +1569,28 @@ definitely not guaranteed to be present in later versions of SBCL."
              "CLASS-SLOTS"
              "COMPUTE-APPLICABLE-METHODS-USING-CLASSES"
              "COMPUTE-CLASS-PRECEDENCE-LIST"
+            "COMPUTE-DEFAULT-INITARGS"
              "COMPUTE-DISCRIMINATING-FUNCTION"
              "COMPUTE-EFFECTIVE-METHOD"
              "COMPUTE-EFFECTIVE-SLOT-DEFINITION"
              "COMPUTE-SLOTS"
+            "DIRECT-SLOT-DEFINITION"
              "DIRECT-SLOT-DEFINITION-CLASS"
+            "EFFECTIVE-SLOT-DEFINITION"
              "EFFECTIVE-SLOT-DEFINITION-CLASS"
              "ENSURE-CLASS"
              "ENSURE-CLASS-USING-CLASS"
              "ENSURE-GENERIC-FUNCTION-USING-CLASS"
-             "EQL-SPECIALIZER-INSTANCE"
+            "EQL-SPECIALIZER"
+             "EQL-SPECIALIZER-OBJECT"
              "EXTRACT-LAMBDA-LIST"
              "EXTRACT-SPECIALIZER-NAMES"
              "FINALIZE-INHERITANCE"
              "FIND-METHOD-COMBINATION"
+            "FORWARD-REFERENCED-CLASS"
+            "FUNCALLABLE-STANDARD-CLASS"
              "FUNCALLABLE-STANDARD-INSTANCE-ACCESS"
+            "FUNCALLABLE-STANDARD-OBJECT"
              "GENERIC-FUNCTION-ARGUMENT-PRECEDENCE-ORDER"
              "GENERIC-FUNCTION-DECLARATIONS"
              "GENERIC-FUNCTION-LAMBDA-LIST"
@@ -1457,8 +1610,9 @@ definitely not guaranteed to be present in later versions of SBCL."
              "REMOVE-DEPENDENT"
              "REMOVE-DIRECT-METHOD"
              "REMOVE-DIRECT-SUBCLASS"
-             "SET-FUNCALLABLE-INSTANCE-FUN"
+             "SET-FUNCALLABLE-INSTANCE-FUNCTION"
              "SLOT-BOUNDP-USING-CLASS"
+            "SLOT-DEFINITION"
              "SLOT-DEFINITION-ALLOCATION"
              "SLOT-DEFINITION-INITARGS"
              "SLOT-DEFINITION-INITFORM"
@@ -1470,9 +1624,16 @@ definitely not guaranteed to be present in later versions of SBCL."
              "SLOT-DEFINITION-TYPE"
              "SLOT-MAKUNBOUND-USING-CLASS"
              "SLOT-VALUE-USING-CLASS"
-             "SPECIALIZER-DIRECT-GENERIC-FUNCTION"
+            "SPECIALIZER"
+             "SPECIALIZER-DIRECT-GENERIC-FUNCTIONS"
              "SPECIALIZER-DIRECT-METHODS"
+            "STANDARD-ACCESSOR-METHOD"
+            "STANDARD-DIRECT-SLOT-DEFINITION"
+            "STANDARD-EFFECTIVE-SLOT-DEFINITION"
              "STANDARD-INSTANCE-ACCESS"
+            "STANDARD-READER-METHOD"
+            "STANDARD-SLOT-DEFINITION"
+            "STANDARD-WRITER-METHOD"
              "UPDATE-DEPENDENT"
              "VALIDATE-SUPERCLASS"
              "WRITER-METHOD-CLASS"))
@@ -1744,7 +1905,6 @@ structure representations"
              "CONTEXT-PC" "CONTEXT-REGISTER"
              "CONTROL-STACK-SC-NUMBER" "COUNT-NO-OPS"
             "*CURRENT-CATCH-BLOCK*"
-             "CURRENT-DYNAMIC-SPACE-START"
              "CURRENT-FLOAT-TRAP" "DEFINE-FOR-EACH-PRIMITIVE-OBJECT"
              "DESCRIPTOR-REG-SC-NUMBER" "DESCRIPTOR-VS-NON-DESCRIPTOR-STORAGE"
              "DOUBLE-FLOAT-EXPONENT-BYTE" "DOUBLE-FLOAT-BIAS"
@@ -1837,6 +1997,7 @@ structure representations"
              "SIMPLE-ARRAY-COMPLEX-SINGLE-FLOAT-WIDETAG"
              "SIMPLE-ARRAY-DOUBLE-FLOAT-WIDETAG"
              #!+long-float "SIMPLE-ARRAY-LONG-FLOAT-WIDETAG"
+            "SIMPLE-ARRAY-NIL-WIDETAG"
              "SIMPLE-ARRAY-SINGLE-FLOAT-WIDETAG"
              "SIMPLE-ARRAY-WIDETAG" "SIMPLE-ARRAY-UNSIGNED-BYTE-16-WIDETAG"
              "SIMPLE-ARRAY-UNSIGNED-BYTE-2-WIDETAG"
@@ -1867,8 +2028,9 @@ structure representations"
              "SYMBOL-HASH-SLOT" "SYMBOL-HEADER-WIDETAG" "SYMBOL-NAME-SLOT"
              "SYMBOL-PACKAGE-SLOT" "SYMBOL-PLIST-SLOT"
              "SYMBOL-SIZE" "SYMBOL-UNUSED-SLOT" "SYMBOL-VALUE-SLOT"
-             "BINDING-STACK-START" "BINDING-STACK-END" 
-             "CONTROL-STACK-START" "CONTROL-STACK-END"
+             "*BINDING-STACK-START*"
+             "*CONTROL-STACK-START*" "*CONTROL-STACK-END*"
+            "CONTROL-STACK-POINTER-VALID-P"
              "DYNAMIC-SPACE-START" "DYNAMIC-SPACE-END"
             #!+c-stack-is-control-stack "ALTERNATE-SIGNAL-STACK-START"
             #!-gencgc "DYNAMIC-0-SPACE-START"