1.0.28.23: Fix value of CL:- in inspector
authorAlastair Bridgewater <lisphacker@users.sourceforge.net>
Thu, 7 May 2009 02:12:58 +0000 (02:12 +0000)
committerAlastair Bridgewater <lisphacker@users.sourceforge.net>
Thu, 7 May 2009 02:12:58 +0000 (02:12 +0000)
  The inspector was the last holdout against using INTERACTIVE-EVAL.

...take one down, commit the fix, 97 FIXMEs left in the source... (with
apologies to Nathan Froyd, per 1.0.28.7)

NEWS
src/code/inspect.lisp
version.lisp-expr

diff --git a/NEWS b/NEWS
index 45585c9..79cdb7a 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -22,6 +22,8 @@
   * bug fix: special variables with a proclaimed specific subtype of FUNCTION
     could not be assigned to or bound with PROGV. (reported by Lorenz
     Mösenlechner)
+  * bug fix: the value of CL:- in the inspector was the previous expression
+    evaluated rather than the expression being evaluated.
 
 changes in sbcl-1.0.28 relative to 1.0.27:
   * a number of bugs in cross-compilation have been fixed, with the ultimate
index c736f5a..37e04c8 100644 (file)
@@ -108,17 +108,12 @@ evaluated expressions.
              (return-from %inspect (reread)))))))))
 
 (defun eval-for-inspect (command stream)
-  (let ((result-list (restart-case (multiple-value-list (eval command))
+  (let ((result-list (restart-case
+                         (multiple-value-list (interactive-eval command))
                        (nil () :report "Return to the inspector."
                           (format stream "~%returning to the inspector~%")
                           (return-from eval-for-inspect nil)))))
-    ;; FIXME: Much of this interactive-EVAL logic is shared with
-    ;; the main REPL EVAL and with the debugger EVAL. The code should
-    ;; be shared explicitly.
-    (setf /// // // / / result-list)
-    (setf +++ ++ ++ + + - - command)
-    (setf *** ** ** * * (car /))
-    (format stream "~&~{~S~%~}" /)))
+    (format stream "~&~{~S~%~}" result-list)))
 
 (defun tty-display-inspected-parts (description named-p elements stream)
   (format stream "~%~A" description)
index 17e9d15..51377fb 100644 (file)
@@ -17,4 +17,4 @@
 ;;; checkins which aren't released. (And occasionally for internal
 ;;; versions, especially for internal versions off the main CVS
 ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
-"1.0.28.22"
+"1.0.28.23"