~ chicken-core (chicken-5) 26de3cdf72950056b9f503ffc2a52e60e96b086e
commit 26de3cdf72950056b9f503ffc2a52e60e96b086e Author: Peter Bex <peter.bex@xs4all.nl> AuthorDate: Sat Jul 12 18:22:17 2014 +0200 Commit: Peter Bex <peter.bex@xs4all.nl> CommitDate: Sat Jul 12 18:22:17 2014 +0200 Add a few more tests for define-values: internal bindings should "shadow" toplevel ones diff --git a/tests/syntax-tests.scm b/tests/syntax-tests.scm index 40c94704..df0f6074 100644 --- a/tests/syntax-tests.scm +++ b/tests/syntax-tests.scm @@ -732,8 +732,9 @@ ((_) 1))) (define (f1) 3) -(define v1 9) -(define v2 10) +(define-values (v1 v2) (values 9 10)) +(define-values (v3 . v4) (values 11 12)) +(define-values v56 (values 13)) (let () (define-syntax s2 @@ -741,6 +742,8 @@ ((_) 2))) 42 (define-values (v1 v2) (values 1 2)) + (define-values (v3 . v4) (values 3 4)) + (define-values v56 (values 5 6)) 43 (define (f1) 4) (define ((f2)) 4) @@ -748,13 +751,18 @@ (assert (= 4 ((f2)))) (assert (= 2 (s2))) (assert (= 1 v1)) - (assert (= 2 v2))) + (assert (= 2 v2)) + (assert (= 3 v3)) + (assert (equal? (list 4) v4)) + (assert (equal? (list 5 6) v56))) (assert (= 1 (s2))) (assert (= 3 (f1))) (assert (= 9 v1)) (assert (= 10 v2)) - +(assert (= 11 v3)) +(assert (equal? (list 12) v4)) +(assert (equal? (list 13) v56)) ;;; redefining definition forms (disabled, since we can not catch this error easily)Trap