0.8.16.2: TYPE-ERROR for ERROR
[sbcl.git] / src / code / package.lisp
index bc7ca27..59f2f24 100644 (file)
 ;;;   the entry is unused. If it is one, then it is deleted.
 ;;;   Double-hashing is used for collision resolution.
 
-(sb!xc:deftype hash-vector () '(simple-array (unsigned-byte 8) (*)))
+(def!type hash-vector () '(simple-array (unsigned-byte 8) (*)))
 
-(sb!xc:defstruct (package-hashtable
-                   (:constructor %make-package-hashtable
-                                 (table hash size &aux (free size)))
-                   (:copier nil))
+(def!struct (package-hashtable
+            (:constructor %make-package-hashtable
+                          (table hash size &aux (free size)))
+            (:copier nil))
   ;; The g-vector of symbols.
   (table (missing-arg) :type simple-vector)
   ;; The i-vector of pname hash values.
   ;; shadowing symbols
   (%shadowing-symbols () :type list)
   ;; documentation string for this package
-  (doc-string nil :type (or simple-base-string null)))
+  (doc-string nil :type (or simple-base-string null))
+  ;; package locking
+  #!+sb-package-locks
+  (lock nil :type boolean)
+  #!+sb-package-locks
+  (%implementation-packages nil :type list))
 \f
 ;;;; iteration macros