diff --git a/collects/stepper/internal-docs.txt b/collects/stepper/internal-docs.txt index 6e162eaa4b..d685afe607 100644 --- a/collects/stepper/internal-docs.txt +++ b/collects/stepper/internal-docs.txt @@ -173,6 +173,13 @@ stepper-binding-type : [ 'let-bound ] : this variable's binding was in a let/*/rec [ 'lambda-bound ] : this variable's binding was in a lambda +stepper-no-lifting-info : + this label is applied to a let-bound-variable whose binding is not + being annotated (because the annotator is skipping inward past it). + For such a binding, no corresponding lifting variable is generated, + and so the marks shouldn't try to capture it. + + stepper-and/or-clauses-consumed : indicates the number of clauses to the left of the one associated with a given 'if' in the expansion of an 'and' or 'or'. diff --git a/collects/stepper/private/marks.ss b/collects/stepper/private/marks.ss index a0504162cf..f4787574ae 100644 --- a/collects/stepper/private/marks.ss +++ b/collects/stepper/private/marks.ss @@ -3,7 +3,8 @@ (require mzlib/list mzlib/contract "my-macros.ss" - "shared.ss") + "shared.ss" + #;(file "/Users/clements/clements/scheme-scraps/eli-debug.ss")) (define-struct full-mark-struct (source label bindings values)) @@ -162,13 +163,15 @@ (let*-2vals ([kept-vars (binding-set-varref-set-intersect tail-bound free-vars)]) (if lifting? (let*-2vals ([let-bindings (filter (lambda (var) - (case (stepper-syntax-property var 'stepper-binding-type) - ((let-bound macro-bound) #t) - ((lambda-bound stepper-temp non-lexical) #f) - (else (error 'make-debug-info - "varref ~a's binding-type info was not recognized: ~a" - (syntax-e var) - (stepper-syntax-property var 'stepper-binding-type))))) + (and + (case (stepper-syntax-property var 'stepper-binding-type) + ((let-bound macro-bound) #t) + ((lambda-bound stepper-temp non-lexical) #f) + (else (error 'make-debug-info + "varref ~a's binding-type info was not recognized: ~a" + (syntax-e var) + (stepper-syntax-property var 'stepper-binding-type)))) + (not (stepper-syntax-property var 'stepper-no-lifting-info)))) kept-vars)] [lifter-syms (map get-lifted-var let-bindings)]) (make-full-mark source label (append kept-vars lifter-syms)))