Handle eval-boundary frame when it is the first subproblem in the
authorChris Hanson <org/chris-hanson/cph>
Fri, 15 Oct 1993 10:01:09 +0000 (10:01 +0000)
committerChris Hanson <org/chris-hanson/cph>
Fri, 15 Oct 1993 10:01:09 +0000 (10:01 +0000)
continuation being debugged.

v7/src/runtime/debug.scm

index 1f3e06fc388e39a9350ce2da32a76333dc2c2e90..ba8b8c3e5c3781b4e1095150665d34266f4da182 100644 (file)
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Id: debug.scm,v 14.35 1993/08/13 00:03:21 cph Exp $
+$Id: debug.scm,v 14.36 1993/10/15 10:01:09 cph Exp $
 
 Copyright (c) 1988-1993 Massachusetts Institute of Technology
 
@@ -105,8 +105,14 @@ MIT in each case. |#
             (set-dstate/condition! dstate condition)
             (set-current-subproblem!
              dstate
-             (or (stack-frame/skip-non-subproblems stack-frame)
-                 (error "No frames on stack!" stack-frame))
+             (let loop ((stack-frame stack-frame))
+               (let ((stack-frame
+                      (stack-frame/skip-non-subproblems stack-frame)))
+                 (if (not stack-frame)
+                     (error "No frames on stack!"))
+                 (if (stack-frame/repl-eval-boundary? stack-frame)
+                     (loop (stack-frame/next stack-frame))
+                     stack-frame)))
              '())
             dstate))))
     (cond ((condition? object)