X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fglobaldb.lisp;h=85b84c216217a399a6b22a7579e765737a35a6f3;hb=4719b7d5d66c5930d3efd6a6d8e7572b16809f8d;hp=5b95bc72ae0d6c02574ef39b7d93780497b465f5;hpb=ce02ab2ecd9c6ae2e570abd8c93ebf3be55bbdad;p=sbcl.git diff --git a/src/compiler/globaldb.lisp b/src/compiler/globaldb.lisp index 5b95bc7..85b84c2 100644 --- a/src/compiler/globaldb.lisp +++ b/src/compiler/globaldb.lisp @@ -125,7 +125,7 @@ (:copier nil)) ;; name of this class (name nil :type keyword :read-only t) - ;; List of Type-Info structures for each type in this class. + ;; list of Type-Info structures for each type in this class (types () :type list)) ;;; a map from type numbers to TYPE-INFO objects. There is one type @@ -637,7 +637,7 @@ (setf (svref table probe) name) (setf (aref index probe) entries-idx) (return)) - (assert (not (equal entry name)))))) + (aver (not (equal entry name)))))) (unless (zerop entries-idx) (setf (aref entries-info (1- entries-idx)) @@ -802,8 +802,8 @@ ;; inner loops. (let ((info (type-info-or-lose class type))) (if env-list-p - (get-info-value name (type-info-number info) env-list) - (get-info-value name (type-info-number info))))) + (get-info-value name (type-info-number info) env-list) + (get-info-value name (type-info-number info))))) #!-sb-fluid (define-compiler-macro info (&whole whole class type name &optional (env-list nil env-list-p)) @@ -1008,7 +1008,11 @@ (define-info-type :class :function :type :assumed-type - :type-spec (or approximate-function-type null)) + ;; FIXME: The type-spec really should be + ;; (or approximate-function-type null)). + ;; It was changed to T as a hopefully-temporary hack while getting + ;; cold init problems untangled. + :type-spec t) ;;; where this information came from: ;;; :DECLARED = from a declaration.