guile-user
[Top][All Lists]
Advanced

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

Any fix for define-public/export failure in dynamic modules (1.3)?


From: Rob Browning
Subject: Any fix for define-public/export failure in dynamic modules (1.3)?
Date: 17 Jan 2001 14:28:21 -0600
User-agent: Gnus/5.0808 (Gnus v5.8.8) Emacs/20.7

In 1.3.4 and in 1.4, if you put a 

  gh_eval_str("(define-public foo bar)");

into the initialization function for a dynamically loaded .so module,
you get the right effect, presuming you've also already done this:

    /* guile currently gives dlopened modules an empty environment
       so here we add in the default one so things you think should work
       will. */
    gh_call2(gh_lookup("set-module-uses!"),
             gh_call0(gh_lookup("current-module")),
             gh_list(gh_lookup("the-scm-module"),
                     SCM_UNDEFINED));

However, in 1.3, any call to define-public or export fails because the
public interface for the current module is still #f (i.e. public-i,
which is set from (module-public-interface (current-module)), is #f.

Does anyone have any suggestions for a reasonable workaround for 1.3?
Is there a function I can call if I detect I'm running 1.3 that'll
properly initialize the current module?

Thanks

-- 
Rob Browning <address@hidden> PGP=E80E0D04F521A094 532B97F5D64E3930



reply via email to

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