diff --git a/test-compiler.rkt b/test-compiler.rkt index 2a938ec..98f90bf 100644 --- a/test-compiler.rkt +++ b/test-compiler.rkt @@ -1320,6 +1320,32 @@ (test '(begin) (void)) +(test '(letrec ([f (lambda (x) + (if (= x 0) + 0 + (+ x (f (sub1 x)))))]) + (begin0 (+ (f 3) (f 4) (f 200)) + (display ""))) + 20116) + + + +(test '(let () (define (f x y z) + (values y x z)) + (call-with-values (lambda () (f 3 1 4)) + (lambda args (list args)))) + '((1 3 4)) + #:with-bootstrapping? #t) + +(test '(let () (define (f x y z) + (begin0 (values y x z) + (display ""))) + (call-with-values (lambda () (f 3 1 4)) + (lambda args (list args)))) + '((1 3 4)) + #:with-bootstrapping? #t) + + #;(test (read (open-input-file "tests/conform/program0.sch")) (port->string (open-input-file "tests/conform/expected0.txt")))