X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fcode%2Finspect.lisp;h=5f9ce239bc288b07592c13b87f829abc1786f63a;hb=b19093fa94d6e1785abee99c35c9a610e8777671;hp=294c7c0011fec70d3e23a876708611e620381f15;hpb=59f7d9254f3601cfd48f0c299d5c30562111e991;p=sbcl.git diff --git a/src/code/inspect.lisp b/src/code/inspect.lisp index 294c7c0..5f9ce23 100644 --- a/src/code/inspect.lisp +++ b/src/code/inspect.lisp @@ -9,7 +9,9 @@ ;;;; provided with absolutely no warranty. See the COPYING and CREDITS ;;;; files for more information. -(in-package "SB-INSPECT") +(in-package "SB-IMPL") + +(declaim #.*optimize-byte-compilation*) ;;; The inspector views LISP objects as being composed of parts. A ;;; list, for example, would be divided into its members, and a @@ -42,12 +44,14 @@ (nth (+ n parts-offset) parts))) (defun inspect (object) + (declare #.*optimize-external-despite-byte-compilation*) (unwind-protect (input-loop object (describe-parts object) *standard-output*) - (setf *inspect-object-stack* nil))) + (setf *inspect-object-stack* nil)) + (values)) -;;; When *ILLEGAL-OBJECT-MARKER* occurs in a parts list, it indicates that that -;;; slot is unbound. +;;; When *ILLEGAL-OBJECT-MARKER* occurs in a parts list, it indicates +;;; that that slot is unbound. (defvar *illegal-object-marker* (cons nil nil)) (defun input-loop (object parts s) @@ -56,7 +60,8 @@ (format s "~&> ") (force-output) (let ((command (read)) - ;; Use 2 less than length because first 2 elements are bookkeeping. + ;; Use 2 less than the length because the first 2 elements + ;; are bookkeeping. (parts-len-2 (- (length parts) 2))) (typecase command (integer