(SAFETY 3) code, errors will be signalled in almost all cases if
invalid sequence bounding indices are passed to functions defined
by ANSI to operate on sequences.
+ * fixed a bug in the build procedure: documentation of SBCL-specific
+ packages is now preserved and available in the final Lisp image.
* fixed some bugs revealed by Paul Dietz' test suite:
** ARRAY-IN-BOUNDS-P now allows arbitrary integers as arguments,
not just nonnegative fixnums;
** the logical bit-array operators such as BIT-AND now accept an
explicit NIL for their "opt-arg" argument (to indicate a
freshly-consed result bit-array);
+ ** ELT now signals an error on an invalid sequence index in safe
+ code;
planned incompatible changes in 0.7.x:
* (not done yet, but planned:) When the profiling interface settles
(cond ((symbolp fun-name)
fun-name)
((and (consp fun-name)
- (= (length fun-name) 2)
- (eq (first fun-name) 'setf))
+ (legal-fun-name-p fun-name))
(second fun-name))
(t
(error "not legal as a function name: ~S" fun-name))))
(add-symbol external symbol))
;; Put shadowing symbols in the shadowing symbols list.
- (setf (package-%shadowing-symbols pkg) (sixth spec))))
+ (setf (package-%shadowing-symbols pkg) (sixth spec))
+ ;; Set the package documentation
+ (setf (package-doc-string pkg) (seventh spec))))
;; FIXME: These assignments are also done at toplevel in
;; boot-extensions.lisp. They should probably only be done once.
;;; <external-symbols>
;;; <imported-internal-symbols>
;;; <imported-external-symbols>
-;;; <shadowing-symbols>)
+;;; <shadowing-symbols>
+;;; <package-documentation>)
;;;
;;; KLUDGE: It would be nice to implement the sublists as instances of
;;; a DEFSTRUCT (:TYPE LIST). (They'd still be lists, but at least we'd be
(let* ((cold-package (car cold-package-symbols-entry))
(symbols (cdr cold-package-symbols-entry))
(shadows (package-shadowing-symbols cold-package))
+ (documentation (string-to-core (documentation cold-package t)))
(internal *nil-descriptor*)
(external *nil-descriptor*)
(imported-internal *nil-descriptor*)
(cold-push handle imported-external)
(cold-push handle external)))))))
(let ((r *nil-descriptor*))
+ (cold-push documentation r)
(cold-push shadowing r)
(cold-push imported-external r)
(cold-push imported-internal r)
(subtypep 'fixnum 'integer nil)
(upgraded-array-element-type '(mod 5) nil)
(upgraded-complex-part-type '(single-float 0.0 1.0) nil)
+
+;;; We should have documentation for our extension package:
+(assert (documentation (find-package "SB-EXT") t))
;;; versions, especially for internal versions off the main CVS
;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
-"0.7.12.17"
+"0.7.12.18"