Rob, I tracked down another g-wrap bug. In this particular case the enumeration C-code generator would create mutliple files that defined the same (exported) variable. This caused problems, specifically when linking two g-wrap-generated C files together (either into the same library or app or other non-lazy linking scenario) when both files reference the same enum.
The fix is simple: turn the gw__enum__<type>_val_to_int_scm_func and gw__enum__<type>_int_to_val_scm_func variables into 'static's. The following patch makes this change, and I've tested it on my gnucash build with sucess. Thanks! -derek --- g-wrap-1.3.2-orig/g-wrap/enumeration.scm Thu Jan 3 22:16:20 2002 +++ g-wrap-1.3.2/g-wrap/enumeration.scm Sat Oct 19 11:17:54 2002 @@ -56,8 +56,8 @@ (define (global-declarations-ccg type client-wrapset) (if (eq? client-wrapset wrapset) '() - (list "SCM " val->int-var-name ";\n" - "SCM " val->sym-var-name ";\n"))) + (list "static SCM " val->int-var-name ";\n" + "static SCM " val->sym-var-name ";\n"))) (define (global-definitions-ccg type client-wrapset) (if client-wrapset -- Derek Atkins, SB '93 MIT EE, SM '95 MIT Media Laboratory Member, MIT Student Information Processing Board (SIPB) URL: http://web.mit.edu/warlord/ PP-ASEL-IA N1NWH [EMAIL PROTECTED] PGP key available _______________________________________________ gnucash-devel mailing list [EMAIL PROTECTED] http://www.gnucash.org/cgi-bin/mailman/listinfo/gnucash-devel