From efe430b248adb120aeb70479c810b0ab1ae77bd6 Mon Sep 17 00:00:00 2001 From: Arthur Gleckler Date: Thu, 12 Sep 1991 23:31:52 +0000 Subject: [PATCH] Make EVALUATE-REGION return the value of the last expression it evaluates, or the value of UNSPECIFIC if there are no expressions. It had been returning UNSPECIFIC always, but the Edwin Debugger needs to be able to find out the value of an evaluation after going through the standard evaluation mechanism (for the purposes of the CONTINUATION-BROWSER-RETURN-FROM, CONTINUATION-BROWSER-RETURN-TO, and CONTINUATION-BROWSER-RETRY debugger commands). --- v7/src/edwin/evlcom.scm | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/v7/src/edwin/evlcom.scm b/v7/src/edwin/evlcom.scm index 31c085974..7cac50cef 100644 --- a/v7/src/edwin/evlcom.scm +++ b/v7/src/edwin/evlcom.scm @@ -1,6 +1,6 @@ ;;; -*-Scheme-*- ;;; -;;; $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/edwin/evlcom.scm,v 1.28 1991/08/28 22:28:42 arthur Exp $ +;;; $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/edwin/evlcom.scm,v 1.29 1991/09/12 23:31:52 arthur Exp $ ;;; ;;; Copyright (c) 1986, 1989-91 Massachusetts Institute of Technology ;;; @@ -259,13 +259,13 @@ may be available. The following commands are special to this mode: evaluation-error-handler (letrec ((loop - (lambda () + (lambda (result) (let ((sexp (read))) - (if (not (eof-object? sexp)) - (begin - (editor-eval sexp environment) - (loop))))))) - loop)))))) + (if (eof-object? sexp) + result + (loop (editor-eval sexp environment))))))) + (lambda () + (loop unspecific)))))))) (define (evaluation-environment argument) (let ((->environment -- 2.25.1