-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 libtool: compile: gcc -DHAVE_CONFIG_H -I. -I. -I. -DLTDLOPEN=libltdl "-DLT_CONFIG_H=<config.h>" -DLTDL -I. -I. -Ilibltdl -I./libltdl - -I./libltdl/libltdl -g2 -Wall -Werror -MT libltdl/libltdl_libltdl_la-ltdl.lo -MD -MP -MF libltdl/.deps/libltdl_libltdl_la-ltdl.Tpo -c libltdl/ltdl.c -DPIC -o libltdl/.libs/libltdl_libltdl_la-ltdl.o libltdl/ltdl.c: In function `lt_dlinterface_free': libltdl/ltdl.c:2042: warning: passing arg 1 of `free' discards qualifiers from pointer target type make[2]: *** [libltdl/libltdl_libltdl_la-ltdl.lo] Error 1
So, should we change libltdl/libtldl/lt__alloc.h to have the FREE(mem) macro cast away const by calling free ((void *) mem), or should we change libltdl/ltdl.c so that lt__interface_id.id_string is just char* instead of const char*, or should we do this nasty approach: Index: libltdl/ltdl.c =================================================================== RCS file: /cvsroot/libtool/libtool/libltdl/ltdl.c,v retrieving revision 1.238 diff -u -p -r1.238 ltdl.c - --- libltdl/ltdl.c 25 Nov 2005 18:42:28 -0000 1.238 +++ libltdl/ltdl.c 8 Dec 2005 13:47:30 -0000 @@ -2039,7 +2039,7 @@ lt_dlinterface_register (const char *id_ void lt_dlinterface_free (lt_dlinterface_id key) { lt__interface_id *interface_id = (lt__interface_id *)key; - - FREE (interface_id->id_string); + FREE (*(char **) &interface_id->id_string); FREE (interface_id); } - -- Life is short - so eat dessert first! Eric Blake [EMAIL PROTECTED] -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.1 (Cygwin) Comment: Public key at home.comcast.net/~ericblake/eblake.gpg Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org iD8DBQFDmDnf84KuGfSFAYARAq3oAKCL2tSaSCaX+MZgmpFpfoA6oSGHswCfXxdM gP05zzxx6jODbPkOi7uxKoc= =VsoH -----END PGP SIGNATURE-----