Test output for srfi-71 [ok]

Testing time: 0s

'/usr/home/chicken/salmonella/build/salmonella-run-publish/chicken/bin/csi' -script run.scm < /dev/null 2>&1

(let () 1)  => 1 ; correct

(let ((x1 1)) x1)  => 1 ; correct

(let ((x1 1) (y1 2)) (list x1 y1))  => (1 2) ; correct

(let ((x1 x2 (values 1 2))) (list x1 x2))  => (1 2) ; correct

(let ((x1 x2 x3 (values 1 2 3))) (list x1 x2 x3))  => (1 2 3) ; correct

(let (((values) (values))) 1)  => 1 ; correct

(let (((values x1) (values 1))) x1)  => 1 ; correct

(let (((values x1 x2) (values 1 2))) (list x1 x2))  => (1 2) ; correct

(let (((values x1 x2 x3) (values 1 2 3))) (list x1 x2 x3))  => (1 2 3) ; correct

(let (((values . x0+) (values))) x0+)  => () ; correct

(let (((values . x0+) (values 1))) x0+)  => (1) ; correct

(let (((values . x0+) (values 1 2))) x0+)  => (1 2) ; correct

(let (((values . x0+) (values 1 2 3))) x0+)  => (1 2 3) ; correct

(let (((values x1 . x1+) (values 1))) (cons x1 x1+))  => (1) ; correct

(let (((values x1 . x1+) (values 1 2))) (cons x1 x1+))  => (1 2) ; correct

(let (((values x1 . x1+) (values 1 2 3))) (cons x1 x1+))  => (1 2 3) ; correct

(let (((values x1 x2 . x2+) (values 1 2))) (cons x1 (cons x2 x2+)))  => (1 2) ; correct

(let (((values x1 x2 . x2+) (values 1 2 3))) (cons x1 (cons x2 x2+)))  => (1 2 3) ; correct

(let loop ((x 1)) (if (zero? x) x (loop (- x 1))))  => 0 ; correct

(let loop (((values x) 1)) (if (zero? x) x (loop (- x 1))))  => 0 ; correct

(let* () 1)  => 1 ; correct

(let* ((x1 1)) x1)  => 1 ; correct

(let* (((values x1 x2 . x2+) (values 1 2 3))) (cons x1 (cons x2 x2+)))  => (1 2 3) ; correct

(let* ((x1 1) (y1 x1)) (list x1 y1))  => (1 1) ; correct

(let* (((values x1 x2 . x2+) (values 1 2 3)) ((values y1 y2 . y2+) (apply values x1 x2 x2+))) (list (cons x1 (cons x2 x2+)) (cons y1 (cons y2 y2+))))  => ((1 2 3) (1 2 3)) ; correct

(letrec () 1)  => 1 ; correct

(letrec ((x 1)) x)  => 1 ; correct

(letrec ((x 1) (y 2)) (list x y))  => (1 2) ; correct

(letrec ((x (lambda () (y))) (y (lambda () 1))) (x))  => 1 ; correct

(letrec ((x y (values (lambda () (y)) (lambda () 1)))) (x))  => 1 ; correct

(let ((values 1)) values)  => 1 ; correct

(let (((values values) 1)) values)  => 1 ; correct

(let (((values bad values) (values 1 2))) (list bad values))  => (1 2) ; correct

(values->list (values))  => () ; correct

(values->list (values 1))  => (1) ; correct

(values->list (values 1 2))  => (1 2) ; correct

(values->list (values 1 2 3))  => (1 2 3) ; correct

(values->vector (values))  => #() ; correct

(values->vector (values 1))  => #(1) ; correct

(values->vector (values 1 2))  => #(1 2) ; correct

(values->vector (values 1 2 3))  => #(1 2 3) ; correct

(values->vector (uncons (quote (1 2 3 4 5))))  => #(1 (2 3 4 5)) ; correct

(values->vector (uncons-2 (quote (1 2 3 4 5))))  => #(1 2 (3 4 5)) ; correct

(values->vector (uncons-3 (quote (1 2 3 4 5))))  => #(1 2 3 (4 5)) ; correct

(values->vector (uncons-4 (quote (1 2 3 4 5))))  => #(1 2 3 4 (5)) ; correct

(values->vector (uncons-cons (quote ((1 2) 3))))  => #(1 (2) (3)) ; correct

(values->vector (unlist (quote (1 2 3))))  => #(1 2 3) ; correct

(values->vector (unvector (quote #(1 2 3))))  => #(1 2 3) ; correct

(let ((q r (quo-rem 13203 42))) (list q r))  => (314 15) ; correct

(naive-quicksort (quote (3 1 4 1 5 9 2)))  => (1 1 2 3 4 5 9) ; correct

(deque:example 4)  => (-4 -3 -2 -1 1 2 3 4) ; correct


*** correct examples: 51
*** wrong examples:   0