Han-Wen Nienhuys <[EMAIL PROTECTED]> writes: > > make check > > isn't complaining.
I think it works only because that preload array is empty. There's a terminating zero entry, so the fetch from there gives NULL, and lt_dlpreload_default can tolerate NULL (it looks like NULL is what's there if you never call lt_dlpreload_default at all). If the array wasn't empty the fetch would be the address of the first symbol name string, and interpreting that as structs would bomb. I suppose the fix is to define the struct, perhaps per below. Or perhaps the lt_dlpreload_default call isn't needed at all if there's no -dlopen or -dlpreopen in the link.
Index: guile-ltdl.h =================================================================== RCS file: /cvsroot/guile/guile/guile-core/libguile-ltdl/guile-ltdl.h,v retrieving revision 1.2.2.2 diff -u -r1.2.2.2 guile-ltdl.h --- guile-ltdl.h 23 May 2005 20:15:31 -0000 1.2.2.2 +++ guile-ltdl.h 10 Jul 2005 23:58:57 -0000 @@ -27,8 +27,11 @@ #define SCM_LTDL_H 1 typedef struct scm_i_lt_dlhandle_struct *scm_lt_dlhandle; -typedef struct scm_i_lt_dlsymlist_struct scm_lt_dlsymlist; typedef void * scm_lt_ptr; +typedef struct scm_i_lt_dlsymlist_struct { + const char *name; + scm_lt_ptr address; +} scm_lt_dlsymlist; void scm_lt_dlpreload_default (const scm_lt_dlsymlist *preloads); int scm_lt_dlinit (void); Index: raw-ltdl.h =================================================================== RCS file: /cvsroot/guile/guile/guile-core/libguile-ltdl/raw-ltdl.h,v retrieving revision 1.2.2.2 diff -u -r1.2.2.2 raw-ltdl.h --- raw-ltdl.h 23 May 2005 20:15:31 -0000 1.2.2.2 +++ raw-ltdl.h 10 Jul 2005 23:58:57 -0000 @@ -211,10 +211,7 @@ /* A preopened symbol. Arrays of this type comprise the exported symbols for a dlpreopened module. */ -typedef struct SCM_INSERTED_DLSYMLIST_STRUCT_DECL { - const char *name; - lt_ptr address; -} lt_dlsymlist; +typedef struct scm_i_lt_dlsymlist_struct lt_dlsymlist; SCMLTXT int lt_dlpreload LT_PARAMS((const lt_dlsymlist *preloaded)); SCMLTXT int lt_dlpreload_default
_______________________________________________ Guile-devel mailing list Guile-devel@gnu.org http://lists.gnu.org/mailman/listinfo/guile-devel