Package: ecere-sdk Version: 0.44.09.9-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.
[...] Building ecere... make[4]: Entering directory '/srv/jenkins-slave/workspace/sid-goto-cc-ecere-sdk/ecere-sdk-0.44.09.9/compiler/bootstrap/ecere' file bootstrap/Container.c line 942 function __ecereRegisterModule_Container: structure member designator 1 out of bounds (1) CONVERSION ERROR Makefile:171: recipe for target 'obj/bootstrap.linux/Container.o' failed make[4]: *** [obj/bootstrap.linux/Container.o] Error 64 make[4]: Leaving directory '/srv/jenkins-slave/workspace/sid-goto-cc-ecere-sdk/ecere-sdk-0.44.09.9/compiler/bootstrap/ecere' Makefile:48: recipe for target 'ecere' failed make[3]: *** [ecere] Error 2 This may be reviewed here: http://sources.debian.net/src/ecere-sdk/0.44.09.9-1/compiler/bootstrap/ecere/bootstrap/Container.c?hl=942#L942 Observe that the C standard clarifies that union initialisers always initialise the first element. Thus this is the struct, with 2 elements, in lines 255 and 256: http://sources.debian.net/src/ecere-sdk/0.44.09.9-1/compiler/bootstrap/ecere/bootstrap/Container.c?hl=255,256#L249 As such all but the first two elements (which should be enclosed in { }) are excess initialisers. Best, Michael
pgpPrPbd5ytmH.pgp
Description: PGP signature