#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 13 years ago by
| Attachment: | macro-exports.patch added |
|---|
comment:1 Changed 13 years ago by
comment:2 Changed 13 years ago by
I suppose the patch can be simplified by removing the symbol? check.
comment:3 Changed 13 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.