summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--test-suite/vm/t-call-cc.scm14
1 files changed, 14 insertions, 0 deletions
diff --git a/test-suite/vm/t-call-cc.scm b/test-suite/vm/t-call-cc.scm
index 05e4de98c..097f276ff 100644
--- a/test-suite/vm/t-call-cc.scm
+++ b/test-suite/vm/t-call-cc.scm
@@ -14,3 +14,17 @@
(else
(set-counter2 (1+ counter2))))))
(loop 0))
+
+(let* ((next #f)
+ (counter 0)
+ (result (call/cc
+ (lambda (k)
+ (set! next k)
+ 1))))
+ (set! counter (+ 1 counter))
+ (cond ((not (= counter result))
+ (error "bad call/cc behaviour" counter result))
+ ((> counter 10)
+ #t)
+ (else
+ (next (+ 1 counter)))))