[Top][All Lists]
[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.
- [Chicken-janitors] #700: requiring uncompiled extensions that use `use' fails,
Chicken Trac <=