Bug#751615: libsoxr: Conflicting declarations of src_strerror mix up pointer and integer

Michael Tautschnig mt at debian.org
Sat Jun 14 18:59:58 UTC 2014


Package: libsoxr
Version: 0.1.1-1
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.

[...]
/usr/bin/cc  -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2  -fopenmp -Wconversion -Wall -W -pedantic -Wundef -Wcast-align -Wpointer-arith -Wno-long-long -Wnested-externs -Wmissing-prototypes -Wstrict-prototypes   -Wl,-z,relro  CMakeFiles/1a-lsr.dir/1a-lsr.c.o  -o 1a-lsr -rdynamic -lm ../src/libsoxr.so.0.1.0 ../src/libsoxr-lsr.so.0.1.9 ../src/libsoxr.so.0.1.0 -Wl,-rpath,/srv/jenkins-slave/workspace/sid-goto-cc-libsoxr/libsoxr-0.1.1/obj-x86_64-linux-gnu/src 

error: conflicting function declarations "src_strerror"
old definition in module 1a-lsr file /srv/jenkins-slave/workspace/sid-goto-cc-libsoxr/libsoxr-0.1.1/src/soxr-lsr.h line 69
const char * (signed int)
new definition in module lsr file /srv/jenkins-slave/workspace/sid-goto-cc-libsoxr/libsoxr-0.1.1/src/lsr.c line 108
const char * (const char *error)
examples/CMakeFiles/1a-lsr.dir/build.make:91: recipe for target 'examples/1a-lsr' failed
make[3]: *** [examples/1a-lsr] Error 64
make[3]: Leaving directory '/srv/jenkins-slave/workspace/sid-goto-cc-libsoxr/libsoxr-0.1.1/obj-x86_64-linux-gnu'
CMakeFiles/Makefile2:354: recipe for target 'examples/CMakeFiles/1a-lsr.dir/all' failed
make[2]: *** [examples/CMakeFiles/1a-lsr.dir/all] Error 2

Looking at the code it seems there is an nice mix of preprocessor macros and
typedefs in place, which unfortunately seem to have led to confusion.

Looking at the code and the (single) use, it really seems that the
implementation gets it wrong, where soxr_error_t expands to a const char*.

Best,
Michael

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 859 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/pkg-multimedia-maintainers/attachments/20140614/43f5b94b/attachment-0001.sig>


More information about the pkg-multimedia-maintainers mailing list