X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fcode%2Fpackage.lisp;h=7c6fc3be700e218ff7e24f2e9d39dd64fb7a8293;hb=5277a0cbf1a72243cad6808883a4847acefc8e6b;hp=7a64d3ab3fcfca4b6e5d65ed470d1479f70ecaef;hpb=cea4896b2482b7b2b429c1631d774b4cfbc0efba;p=sbcl.git diff --git a/src/code/package.lisp b/src/code/package.lisp index 7a64d3a..7c6fc3b 100644 --- a/src/code/package.lisp +++ b/src/code/package.lisp @@ -35,10 +35,10 @@ (sb!xc:defstruct (package-hashtable (:constructor %make-package-hashtable ()) (:copier nil)) ;; The g-vector of symbols. - ;; FIXME: could just be type SIMPLE-VECTOR, with REQUIRED-ARGUMENT + ;; FIXME: could just be type SIMPLE-VECTOR, with REQUIRED-ARG (table nil :type (or simple-vector null)) ;; The i-vector of pname hash values. - ;; FIXME: could just be type HASH-VECTOR, with REQUIRED-ARGUMENT + ;; FIXME: could just be type HASH-VECTOR, with REQUIRED-ARG (hash nil :type (or hash-vector null)) ;; The total number of entries allowed before resizing. ;; @@ -93,8 +93,8 @@ ;; packages that use this package (%used-by-list () :type list) ;; PACKAGE-HASHTABLEs of internal & external symbols - (internal-symbols (required-argument) :type package-hashtable) - (external-symbols (required-argument) :type package-hashtable) + (internal-symbols (missing-arg) :type package-hashtable) + (external-symbols (missing-arg) :type package-hashtable) ;; shadowing symbols (%shadowing-symbols () :type list) ;; documentation string for this package @@ -279,15 +279,15 @@ (,',init-macro ,(car ',ordered-types))))))) (when ,packages ,(when (null symbol-types) - (error 'program-error + (error 'simple-program-error :format-control - "Must supply at least one of :internal, :external, or ~ - :inherited.")) + "At least one of :INTERNAL, :EXTERNAL, or ~ + :INHERITED must be supplied.")) ,(dolist (symbol symbol-types) (unless (member symbol '(:internal :external :inherited)) (error 'program-error :format-control - "~S is not one of :internal, :external, or :inherited." + "~S is not one of :INTERNAL, :EXTERNAL, or :INHERITED." :format-argument symbol))) (,init-macro ,(car ordered-types)) (flet ((,real-symbol-p (number) @@ -299,7 +299,8 @@ ,@(when (member :internal ',ordered-types) `((:internal (setf ,',counter - (position-if #',',real-symbol-p ,',hash-vector + (position-if #',',real-symbol-p + ,',hash-vector :start (if ,',counter (1+ ,',counter) 0))) @@ -311,7 +312,8 @@ ,@(when (member :external ',ordered-types) `((:external (setf ,',counter - (position-if #',',real-symbol-p ,',hash-vector + (position-if #',',real-symbol-p + ,',hash-vector :start (if ,',counter (1+ ,',counter) 0)))