Package: avrp Version: 1.0beta3-7 Usertags: goto-cc During a rebuild of all Debian packages in a clean sid chroot (using cowbuilder and pbuilder) the build failed with the following error. Please note that we use our research compiler tool-chain (using tools from the cbmc package), which permits extended reporting on type inconsistencies at link time.
[...] gcc -o avrp avrp.o io_linux.o talking.o file.o memtalk.o args.o stdextra.o -Wl,-z,relro error: conflicting function declarations "nocase_strcmp" old definition in module avrp file avrp.h line 223 char * (char *, char *) new definition in module stdextra file stdextra.c line 15 signed int (char *s, char *t) Makefile.linux:36: recipe for target 'avrp' failed make[1]: *** [avrp] Error 64 For any architecture with sizeof(char*)!=sizeof(int), the result value will have several undefined bytes. As all calls to nocase_strcmp just do an is-zero comparison, the branch decisions will be arbitrary. The fix, however, is trivial: change the return value of nocase_strcmp (and also nocase_strncmp) to int in avrp.h: http://sources.debian.net/src/avrp/1.0beta3-7/avrp.h?hl=223#L223 Best, Michael
pgpgoTHjaDIK5.pgp
Description: PGP signature