#882 closed defect (fixed)
* export and macros not working
Reported by: | megane | Owned by: | |
---|---|---|---|
Priority: | minor | Milestone: | 4.9.0 |
Component: | unknown | Version: | 4.7.x |
Keywords: | Cc: | ||
Estimated difficulty: |
Description
There still seems to be problems with the * export list:
(module foo * (import chicken scheme) (define-syntax baz (lambda _ ''foo))) (module bar * ; <- change to () and everything works (import chicken scheme) (import foo) (export baz)) (import bar) (print (baz)) ;; Warning: exported identifier of module `bar' has not been defined: baz ;; Error: module unresolved: bar
Attachments (1)
Change History (5)
Changed 12 years ago by
Attachment: | macro-exports.patch added |
---|
comment:1 Changed 12 years ago by
comment:2 Changed 12 years ago by
I suppose the patch can be simplified by removing the symbol?
check.
comment:3 Changed 12 years ago by
Resolution: | → fixed |
---|---|
Status: | new → closed |
Felix made a proper fix, which went in as a01a9da3e4832791c70a062f4a1534909fff1c77
Note: See
TracTickets for help on using
tickets.
I'm unsure what an export of
*
is supposed to do with any macros imported from other modules. Is it supposed to re-export those always, or only on explicit request with(export ...)
? I think the wildcard syntax is a bad idea and should probably be dropped.Anyway, the above patch seems to fix the immediate problem, but it doesn't seem to work when an import library is generated for
bar
, so I guess there's still something missing.