fix `chaperone-prompt-tag'
This commit is contained in:
parent
7b149b7f5a
commit
1bf5fda869
|
@ -323,6 +323,28 @@
|
||||||
values
|
values
|
||||||
(lambda (s) (string-append s "x")))))
|
(lambda (s) (string-append s "x")))))
|
||||||
|
|
||||||
|
;; ----------------------------------------
|
||||||
|
;; check that cc proc doesn't break abort proc
|
||||||
|
|
||||||
|
(let ()
|
||||||
|
(define l null)
|
||||||
|
|
||||||
|
(define cpt
|
||||||
|
(chaperone-prompt-tag
|
||||||
|
(make-continuation-prompt-tag)
|
||||||
|
(λ (x) (set! l (cons "ho" l)) x)
|
||||||
|
(λ (x) (set! l (cons "hi" l)) x)
|
||||||
|
;; commented out intentionally, see below
|
||||||
|
(λ (x) x)))
|
||||||
|
|
||||||
|
(call-with-continuation-prompt
|
||||||
|
(λ ()
|
||||||
|
(abort-current-continuation cpt 5))
|
||||||
|
cpt
|
||||||
|
(λ (x) (+ 1 x)))
|
||||||
|
|
||||||
|
(test '("ho" "hi") values l))
|
||||||
|
|
||||||
;; ----------------------------------------
|
;; ----------------------------------------
|
||||||
;; Check that when a continuation includes a continuation
|
;; Check that when a continuation includes a continuation
|
||||||
;; application, that a captured requirement to apply a
|
;; application, that a captured requirement to apply a
|
||||||
|
|
|
@ -5800,7 +5800,7 @@ Scheme_Object *do_chaperone_prompt_tag (const char *name, int is_impersonator, i
|
||||||
ppos = 5;
|
ppos = 5;
|
||||||
} else
|
} else
|
||||||
ppos = 4;
|
ppos = 4;
|
||||||
redirects = scheme_make_pair(argv[1], redirects);
|
redirects = scheme_make_pair(argv[2], redirects);
|
||||||
} else {
|
} else {
|
||||||
ppos = 3;
|
ppos = 3;
|
||||||
redirects = argv[2];
|
redirects = argv[2];
|
||||||
|
|
Loading…
Reference in New Issue
Block a user