The addition of "without-stepping" as it was changed the operation of
authorsybok <sybok>
Mon, 2 Sep 1991 03:24:33 +0000 (03:24 +0000)
committersybok <sybok>
Mon, 2 Sep 1991 03:24:33 +0000 (03:24 +0000)
scheme so as to prevent my error handling code in the stepper from
working right.  Thus, I've added a procedure, stepping-off!, which one
may call in the action thunk in order to cause without-stepping to
permanently terminate stepping.

v7/src/runtime/global.scm
v8/src/runtime/global.scm

index 0382bf48351e4e2d2c4458f2eb1eac3ac58582a8..03e69d1c96b88ca9454ef82b21fda1e5b68b0b5d 100644 (file)
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/global.scm,v 14.28 1991/08/28 13:19:53 jinx Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/global.scm,v 14.29 1991/09/02 03:24:33 sybok Exp $
 
 Copyright (c) 1988-91 Massachusetts Institute of Technology
 
@@ -263,6 +263,8 @@ MIT in each case. |#
 ;; encountered on each entry to the thunk. It might be better to
 ;; restore the hooks to the initial state. I flipped a coin.
 
+(define *old-hook-storage-environment*)
+
 (let-syntax ((ufixed-objects-slot
              (macro (name)
                (fixed-objects-vector-slot name))))
@@ -274,6 +276,7 @@ MIT in each case. |#
 
     (let ((old-stepper-hooks)
          (null-hooks (hunk3-cons #f #f #f)))
+      (set! *old-hook-storage-environment* (the-environment))
       (dynamic-wind
        (lambda ()
         (set! old-stepper-hooks (get-stepper-hooks))
@@ -285,4 +288,7 @@ MIT in each case. |#
         ((ucode-primitive primitive-return-step 2)
          unspecific
          (or old-stepper-hooks
-             null-hooks)))))))
\ No newline at end of file
+             null-hooks)))))))
+
+(define (stepping-off!)
+  (set! (access old-stepper-hooks *old-hook-storage-environment*) null-hooks))
index e3c708142c69ad8e89457ea823d478c8229e9a17..fb2e56cbe393201048b8e884c75fa26dd4f1776e 100644 (file)
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v8/src/runtime/global.scm,v 14.28 1991/08/28 13:19:53 jinx Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v8/src/runtime/global.scm,v 14.29 1991/09/02 03:24:33 sybok Exp $
 
 Copyright (c) 1988-91 Massachusetts Institute of Technology
 
@@ -263,6 +263,8 @@ MIT in each case. |#
 ;; encountered on each entry to the thunk. It might be better to
 ;; restore the hooks to the initial state. I flipped a coin.
 
+(define *old-hook-storage-environment*)
+
 (let-syntax ((ufixed-objects-slot
              (macro (name)
                (fixed-objects-vector-slot name))))
@@ -274,6 +276,7 @@ MIT in each case. |#
 
     (let ((old-stepper-hooks)
          (null-hooks (hunk3-cons #f #f #f)))
+      (set! *old-hook-storage-environment* (the-environment))
       (dynamic-wind
        (lambda ()
         (set! old-stepper-hooks (get-stepper-hooks))
@@ -285,4 +288,7 @@ MIT in each case. |#
         ((ucode-primitive primitive-return-step 2)
          unspecific
          (or old-stepper-hooks
-             null-hooks)))))))
\ No newline at end of file
+             null-hooks)))))))
+
+(define (stepping-off!)
+  (set! (access old-stepper-hooks *old-hook-storage-environment*) null-hooks))