[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Chicken-janitors] #131: check for defined exports may be confused by re
From: |
Chicken Trac |
Subject: |
[Chicken-janitors] #131: check for defined exports may be confused by renaming |
Date: |
Wed, 25 Nov 2009 21:10:18 -0000 |
#131: check for defined exports may be confused by renaming
----------------------+-----------------------------------------------------
Reporter: felix | Owner: felix
Type: defect | Status: new
Priority: major | Milestone: 4.3.0
Component: expander | Version: 4.2.x
Keywords: modules |
----------------------+-----------------------------------------------------
If a macro expands into a module-definition, the check for missing export
definitions appears not to take renaming into account:
{{{
(define-syntax testm
(syntax-rules ()
((_)
(module foo (bar)
(import scheme)
(define bar 1)))))
}}}
gives an "unresolved module" error.
Possibly, these tests using `assq` are incorrect and should lookup the id
first (`##sys#finalize-module` in `expand.scm`):
{{{
(let ((def (assq id dlist)))
(if (and def (symbol? (cdr def)))
(cdr def)
(let ((a (assq id (##sys#current-
environment))))
}}}
--
Ticket URL: <http://www.irp.oist.jp/trac/chicken/ticket/131>
Chicken Scheme <http://www.call-with-current-continuation.org/>
Chicken Scheme is a compiler for the Scheme programming language.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Chicken-janitors] #131: check for defined exports may be confused by renaming,
Chicken Trac <=