#296 closed defect (fixed)
Import with renaming fails when syntax refers to exported binding
Reported by: | felix winkelmann | Owned by: | felix winkelmann |
---|---|---|---|
Priority: | critical | Milestone: | |
Component: | expander | Version: | 4.5.x |
Keywords: | module export | Cc: | |
Estimated difficulty: |
Description
(reported by Imran Rafique)
The following fails:
(module foo (bar baz) (import scheme chicken) (define (baz x) (print x)) (define-syntax bar (syntax-rules () ((_ x) (baz x)))) ) (import (prefix foo f:)) (f:bar 1)
If the export list is replaced by ((bar baz))
, then it works. The reason is that the SE of bar
in the former case does not contain baz
.
Change History (3)
comment:1 Changed 14 years ago by
comment:2 Changed 14 years ago by
Resolution: | → fixed |
---|---|
Status: | new → closed |
Note: See
TracTickets for help on using
tickets.
Update: this example works if the module and the import are compiled, separately. So the cases where it fails are: