Another neat bug in current-CVS (hit import, go boom! :)

Derek Atkins warlord@MIT.EDU
09 Feb 2001 15:01:01 -0500

That did it.  Thanks.  Want me to send a patch, or can the right thing
happen in CVS?

After changing the references in guile-util.c, as you suggested, I
thought I'd look to see where else gh_lookup() was being used.  Here
is the list.  Should these be changed to gh_eval_str() as well?


find . -name \*.\[ch\] -print | xargs grep gh_lookup
./src/gnome/top-level.c:    SCM rem = gh_lookup(gnc_scheme_remaining_var);
./src/gnome/top-level.c:    SCM window = gw_wcp_assimilate_ptr(app, gh_lookup("<gnc:UIWidget>"));
./src/guile/File.c:  /* This should be gh_lookup, but that appears to be broken */
./src/guile/gnc-helpers.c:    trans_type = gh_lookup("<gnc:Transaction*>");
./src/guile/option-util.c:    void_type = gh_lookup("<gw:void*>");
./src/guile/option-util.c:    callback_type = gh_lookup("<gnc:OptionChangeCallback>"); (Bill Gribble) writes:

> On Fri, Feb 09, 2001 at 02:27:13PM -0500, Derek Atkins wrote:
> > So, really, the scheme assertion is failing in gnc-helpers.c:53 in
> > gnc_glist_to_scm_list().  Basically, at guile-util.c:1142
> > gnc_glish_account_ptr_to_scm_internal() is passing the results of
> > gh_lookup("<gnc:Account*>") into a function where it is being checked
> > against gw_wct_p().
> Ah, good old gh_lookup.  I seem to remember that we stopped using it
> (replacing with gh_eval_str) some time back, but that code in
> guile-utils.c is pretty new.
> I'm guessing that gh_lookup is broken in guile-1.3 but works in
> guile-1.4.  Could you try doing a search-and-replace gh_lookup with
> gh_eval_str in guile-util.c (same arguments) and see if that makes any
> difference?
> Thanks,
> b.g.

       Derek Atkins, SB '93 MIT EE, SM '95 MIT Media Laboratory
       Member, MIT Student Information Processing Board  (SIPB)
       URL:    PP-ASEL-IA     N1NWH
       warlord@MIT.EDU                        PGP key available