Opened 14 months ago
Last modified 3 weeks ago
#1812 new defect
Modules leaking define-for-syntax variables and functions
Reported by: | Idiomdrottning | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | 6.0.0 |
Component: | core libraries | Version: | 5.3.0 |
Keywords: | modules, syntax | Cc: | |
Estimated difficulty: |
Description
(module foo (foo-deluxe) (import scheme (chicken base) (chicken syntax)) (define-for-syntax (bar) (print "hi!")) (define-syntax foo-deluxe (syntax-rules () ((foo-deluxe) (bar)))) ) (import foo) (foo-deluxe) (bar) (set! bar #f) (foo-deluxe)
Is this intentional?
Change History (2)
comment:1 Changed 4 weeks ago by
Milestone: | someday → 6.0.0 |
---|
comment:2 Changed 3 weeks ago by
Note: See
TracTickets for help on using
tickets.
This is currently not really done at all. The "meta" environment is the same as the global toplevel evaluation environment. The proper thing to do here is probably to create a fresh, distinct meta-environment for every module, initialized to "scheme".