﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc	difficulty
700	requiring uncompiled extensions that use `use' fails	Moritz Heidkamp	sjamaan	"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 and aa2d6b8247b13476fe609d1fd263238cc10a6a8e."	defect	closed	minor	4.9.0	compiler	4.7.x	invalid		Jim Ursetto	
