mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-09 21:40:33 +02:00
add scoping test
* test-suite/tests/syntax.test ("top-level define"): Add a test for module scoping of introduced identifiers.
This commit is contained in:
parent
19ef14f9b8
commit
1ce645567d
1 changed files with 18 additions and 1 deletions
|
@ -795,7 +795,24 @@
|
||||||
(pass-if-syntax-error "(define)"
|
(pass-if-syntax-error "(define)"
|
||||||
exception:generic-syncase-error
|
exception:generic-syncase-error
|
||||||
(eval '(define)
|
(eval '(define)
|
||||||
(interaction-environment)))))
|
(interaction-environment))))
|
||||||
|
|
||||||
|
(pass-if "module scoping"
|
||||||
|
(equal?
|
||||||
|
(eval
|
||||||
|
'(begin
|
||||||
|
(define-module (top-level-define/module-scoping-1)
|
||||||
|
#:export (define-10))
|
||||||
|
(define-syntax-rule (define-10 name)
|
||||||
|
(begin
|
||||||
|
(define t 10)
|
||||||
|
(define (name) t)))
|
||||||
|
(define-module (top-level-define/module-scoping-2)
|
||||||
|
#:use-module (top-level-define/module-scoping-1))
|
||||||
|
(define-10 foo)
|
||||||
|
(foo))
|
||||||
|
(current-module))
|
||||||
|
10)))
|
||||||
|
|
||||||
(with-test-prefix "internal define"
|
(with-test-prefix "internal define"
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue