Sorry, I'd had sent this to chicken-users - but I'm kinda sure those who could answer don't read that list ;-)
find attache two trivial module files foo.scm and bar.scm to be compiled with "csc -c foo.scm bar.scm" . Both declare (block) optimization. Plus several foobarX.scm for X in 1-6 versions, which show various attempts to make use of those exported foo and bar. To be compiled with "csc foo.o bar.o foobarX.scm -o foobar". None of them let's me ever make use of those definitions compiled with block optimization. Am I doing something wrong? Thanks a lot /Jörg ......
(declare (unit foo) (block) (emit-import-library foo)) (module foo (foo) (import scheme chicken) (: foo (fixnum --> fixnum)) (define (foo x) (* x 7)) )
(declare (unit bar) (block) (emit-import-library bar)) (module bar (bar) (import scheme chicken) (: bar (fixnum --> fixnum)) (define (bar x) (+ x 0)) )
(declare (uses foo bar)) (import (prefix foo foo:)) (import (prefix bar bar:)) (define aFoo foo:foo) (define aBar bar:bar) (display (aFoo (aBar 6))) (newline)
(declare (uses foo bar)) (import (prefix foo foo:)) (import (prefix bar bar:)) (define (aFoo x) (foo:foo x)) (define (aBar x) (bar:bar x)) (display (aFoo (aBar 6))) (newline)
(declare (uses foo bar)) (import (prefix foo foo:)) (import (prefix bar bar:)) (display (foo:foo (bar:bar 6))) (newline)
(declare (uses foo bar)) (import foo) (import bar) (display (foo (bar 6))) (newline)
(declare (uses foo bar)) (module foobar (reexport foo bar)) (import foobar) (display (foo (bar 6))) (newline)
(declare (uses foo bar)) (module foobar (foo bar) (import scheme) (import (prefix foo foo:) (prefix bar bar:)) (define (bar x) (bar:bar x)) (define foo foo:foo)) (import foobar) (display (foo (bar 6))) (newline)
_______________________________________________ Chicken-hackers mailing list Chicken-hackers@nongnu.org https://lists.nongnu.org/mailman/listinfo/chicken-hackers