chicken-janitors
[Top][All Lists]
Advanced

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

[Chicken-janitors] #700: requiring uncompiled extensions that use `use'


From: Chicken Trac
Subject: [Chicken-janitors] #700: requiring uncompiled extensions that use `use' fails
Date: Fri, 23 Sep 2011 12:28:30 -0000

#700: requiring uncompiled extensions that use `use' fails
----------------------+-----------------------------------------------------
 Reporter:  syn       |       Owner:  sjamaan
     Type:  defect    |      Status:  new    
 Priority:  minor     |   Milestone:  4.8.0  
Component:  compiler  |     Version:  4.7.x  
 Keywords:            |  
----------------------+-----------------------------------------------------
 The problem can be reproduced by having a file {{{foo.scm}}} containing
 something like this:

 {{{
 (module foo

 ()
 (import chicken scheme)
 (use extras)

 )
 }}}

 and a file {{{test.scm}}} containing just {{{(require-library foo)}}}. Now
 generate an import library through {{{csc -Jt foo.scm}}}. {{{csi -s
 test.scm}}} will work whereas {{{csc test.scm}}} and then running
 {{{./test}}} will result in:

 {{{
 Warning: reference to possibly unbound identifier `extras'

 Warning: reference to possibly unbound identifier `use'

 Error: module unresolved: foo

         Call history:

         ##sys#require
         <syntax>          (module foo () (import chicken scheme) (use
 extras))
         <syntax>          (##core#module foo () (import chicken scheme)
 (use extras))
         <syntax>          (import chicken scheme)
         <syntax>          (##core#undefined)
         <syntax>          (use extras)  <--
 }}}

 Compiling {{{foo.import.scm}}} doesn't change this behavior. Compiling
 {{{foo.scm}}} to {{{foo.so}}} via {{{csc -s foo.scm}}} makes it work
 again. Looks like loading uncompiled extensions that use {{{use}}} (and
 possibly other special forms?) doesn't work from compiled programs. This
 has been tested with both 4.7.0
 andaa2d6b8247b13476fe609d1fd263238cc10a6a8e.

-- 
Ticket URL: <http://bugs.call-cc.org/ticket/700>
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]