Package: eb
Version: 4.4.3-7
Usertags: goto-cc

During a rebuild of all packages in a clean sid chroot (and cowbuilder+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.

[...]
libtool: link: x86_64-linux-gnu-gcc -g -O2 -fPIE -fstack-protector 
--param=ssp-buffer-size=4 -Wformat -Werror=format-security -fPIE -pie -Wl,-z 
-Wl,relro -Wl,-z -Wl,now -o .libs/ebfont ebfont.o  ../libebutils/libebutils.a 
../eb/.libs/libeb.so -lz -lnsl
file makedir.c line 60: error: conflicting function declarations 
"make_missing_directory"
old definition in module ebfont file ../libebutils/makedir.h line 40
signed int (const char *, signed int)
new definition in module makedir file makedir.c line 60
signed int (const char *path, unsigned int mode)
make[3]: *** [ebfont] Error 64
make[3]: Leaving directory 
`/srv/jenkins-slave/workspace/sid-goto-cc-eb/eb-4.4.3/ebfont'
make[2]: *** [all-recursive] Error 1

Observe that the parameter mode uses unsigned int in the implementation, whereas
the declaration in the header file suggests the argument is signed. Likely all
that is needed in order to rule out undefined behaviour is amending the
declaration in the header file.

Best,
Michael

Attachment: pgpyYOlaX0ghl.pgp
Description: PGP signature

Reply via email to