chicken-janitors
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Chicken-janitors] #1060: reexport doesn't reexport implicit syntax expo


From: Chicken Trac
Subject: [Chicken-janitors] #1060: reexport doesn't reexport implicit syntax exports
Date: Fri, 08 Nov 2013 10:31:32 -0000

#1060: reexport doesn't reexport implicit syntax exports
----------------------+-----------------------------------------------------
 Reporter:  syn       |       Owner:       
     Type:  defect    |      Status:  new  
 Priority:  major     |   Milestone:  4.9.0
Component:  expander  |     Version:  4.8.x
 Keywords:            |  
----------------------+-----------------------------------------------------
 Given a module that exports some syntax which expands to an identifier
 which isn't explicilty exported, that syntax will not work if it is
 reexported by another module. Example:

 {{{
 ;;; example.scm

 (module foo

 (some-syntax)

 (import scheme)

 (define-syntax some-implicitly-used-syntax
   (syntax-rules ()
     ((_ x) x)))


 (define-syntax some-syntax
   (syntax-rules ()
     ((_ x)
      (some-implicitly-used-syntax 'x))))

 )

 (module bar

 ()

 (reexport foo)

 )

 }}}

 To trigger the bug:

 {{{
 $ csc -s -J example.scm
 $ csi -R foo -p '(some-syntax bar)'
 bar
 $ csi -R bar -p '(some-syntax bar)'

 Error: unbound variable: some-implicitly-used-syntax
 }}}


 This was tested with version 4.8.0.5 only so far.

-- 
Ticket URL: <http://bugs.call-cc.org/ticket/1060>
Chicken Scheme <http://www.call-with-current-continuation.org/>
Chicken Scheme is a compiler for the Scheme programming language.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]