Package: cfengine2
Version: 2.2.10-5
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.

[...]
/bin/bash ../libtool  --tag=CC   --mode=link gcc -g -O2 -Wreturn-type 
-Wmissing-prototypes -Wuninitialized -pthread   -pthread    -L/usr/lib64 
-L/usr/lib  -Wl,-z,defs -Wl,-z,defs -o cfagent cfagent.o wrapper.o do.o 
libcfengine.la  -ldb -L/usr/lib64 -L/usr/lib -lcrypto -L../pub -lcfpub 
-lpthread -lrt -lm 
libtool: link: gcc -g -O2 -Wreturn-type -Wmissing-prototypes -Wuninitialized 
-pthread -pthread -Wl,-z -Wl,defs -Wl,-z -Wl,defs -o cfagent cfagent.o 
wrapper.o do.o  -L/usr/lib64 -L/usr/lib ./.libs/libcfengine.a -L../pub -ldb 
-lcrypto -lcfpub -lpthread -lrt -lm -pthread

file cf.extern.h line 542: error: conflicting array sizes for variable 
"CF_DIGEST_TYPES"
old definition in module globals file globals.c line 1283
char *[9l][2l]
new definition in module checksums file cf.extern.h line 542
char *[4l][2l]
make[3]: *** [cfagent] Error 64
make[3]: Leaving directory 
`/srv/jenkins-slave/workspace/sid-goto-cc-cfengine2/cfengine2-2.2.10/src'
make[2]: *** [all] Error 2

Compare the following declarations:

http://sources.debian.net/src/cfengine2/2.2.10-5/src/cf.extern.h?hl=542,543#L542
http://sources.debian.net/src/cfengine2/2.2.10-5/src/globals.c?hl=1283,1296#L1283

An optimising compiler may decide that all loops over CF_DIGEST_TYPES are to be
unrolled exactly 4 times, missing the remaining entries.

Best,
Michael

Attachment: pgpfcSa4jXNcC.pgp
Description: PGP signature

Reply via email to