diff --git a/pkgs/racket-test-core/tests/racket/thread.rktl b/pkgs/racket-test-core/tests/racket/thread.rktl index e6966962de..c03315ec15 100644 --- a/pkgs/racket-test-core/tests/racket/thread.rktl +++ b/pkgs/racket-test-core/tests/racket/thread.rktl @@ -555,7 +555,8 @@ (sleep) 'not-void))) -(err/rt-test (let/cc k (call-in-nested-thread (lambda () (k)))) exn:fail:contract:continuation?) +(test 1 call-with-continuation-prompt (lambda () + (let/cc k (call-in-nested-thread (lambda () (k 1)))))) (err/rt-test (let/ec k (call-in-nested-thread (lambda () (k)))) exn:fail:contract:continuation?) (err/rt-test ((call-in-nested-thread (lambda () (let/cc k k)))) exn:fail:contract:continuation?) (err/rt-test ((call-in-nested-thread (lambda () (let/ec k k)))) exn:fail:contract:continuation?) diff --git a/racket/src/racket/src/thread.c b/racket/src/racket/src/thread.c index 6846e0c21f..e40f5afdb9 100644 --- a/racket/src/racket/src/thread.c +++ b/racket/src/racket/src/thread.c @@ -3731,7 +3731,7 @@ Scheme_Object *scheme_call_as_nested_thread(int argc, Scheme_Object *argv[], voi v = NULL; failure = 1; } else { - v = scheme_apply(argv[0], 0, NULL); + v = scheme_apply_with_prompt(argv[0], 0, NULL); failure = 0; }