[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#751626: xorg-server: XkbDfltAccessXOptions declared with types of different size



Package: xorg-server
Version: 2:1.15.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.

[...]
libtool: link: gcc -std=gnu99 -DHAVE_DIX_CONFIG_H -Wall -Wpointer-arith -Wmissing-declarations -Wformat=2 -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Wbad-function-cast -Wold-style-definition -Wdeclaration-after-statement -Wunused -Wuninitialized -Wshadow -Wmissing-noreturn -Wmissing-format-attribute -Wredundant-decls -Wlogical-op -Werror=implicit -Werror=nonnull -Werror=init-self -Werror=main -Werror=missing-braces -Werror=sequence-point -Werror=return-type -Werror=trigraphs -Werror=array-bounds -Werror=write-strings -Werror=address -Werror=int-to-pointer-cast -Werror=pointer-to-int-cast -fno-strict-aliasing -fno-strict-aliasing -D_DEFAULT_SOURCE -D_BSD_SOURCE -DHAS_FCHOWN -DHAS_STICKY_DIR_BIT -I/usr/include/libdrm -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/X11/dri -I../../../include -I../../include -I../../../Xext -I../../../composite -I../../../damageext -I../../../xfixes -I../../../Xi -I../../../mi -I../../../miext/sync -I../../../miext/shadow -I../../../miext/damage -I../../../render -I../../../randr -I../../../fb -I../../../dbe -I../../../present -fvisibility=hidden -DHAVE_XORG_CONFIG_H -fvisibility=hidden -I/usr/include/libdrm -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -fPIE -pie -Wl,-z -Wl,relro -Wl,-Bsymbolic -o Xorg sdksyms.o -Wl,--export-dynamic  ../../dix/.libs/libmain.a ../../dix/.libs/libdix.a loader/.libs/libloader.a common/.libs/libcommon.a -ludev os-support/.libs/libxorgos.a parser/.libs/libxf86config_internal.a dixmods/.libs/libdixmods.a modes/.libs/libxf86modes.a ramdac/.libs/libramdac.a ddc/.libs/libddc.a i2c/.libs/libi2c.a ../../composite/.libs/libcomposite.a ../../xfixes/.libs/libxfixes.a ../../Xext/.libs/libXext.a -lselinux ../../dbe/.libs/libdbe.a ../../record/.libs/librecord.a ../../randr/.libs/librandr.a ../../render/.libs/librender.a ../../damageext/.libs/libdamageext.a ../../present/.libs/libpresent.a ../../miext/damage/.libs/libdamage.a ../../Xi/.libs/libXi.a ../../xkb/.libs/libxkb.a dixmods/.libs/libxorgxkb.a dri/.libs/libdri.a dri2/.libs/libdri2.a ../../dri3/.libs/libdri3.a ../../miext/sync/.libs/libsync.a ../../mi/.libs/libmi.a ../../os/.libs/libos.a -lgcrypt -ldl -lpciaccess -lGL -lpthread -ldrm -lpixman-1 -lXfont -lXau -lxshmfence -lXdmcp -laudit -lm

file ../../xkb/xkbInit.c line 690: error: conflicting types for variable "XkbDfltAccessXOptions"
old definition in module xkbAccessX file ../../xkb/xkbAccessX.c line 58
unsigned short int
new definition in module xkbInit file ../../xkb/xkbInit.c line 690
unsigned char
Makefile:709: recipe for target 'Xorg' failed
make[5]: *** [Xorg] Error 64
make[5]: Leaving directory '/srv/jenkins-slave/workspace/sid-goto-cc-xorg-server/xorg-server-1.15.1/build-main/hw/xfree86'
Makefile:754: recipe for target 'all-recursive' failed
make[4]: *** [all-recursive] Error 1

For all platforms with sizeof(unsigned char)<sizeof(unsigned short int) the
assignment here

http://sources.debian.net/src/xorg-server/2:1.15.1-1/xkb/xkbInit.c?hl=751,752#L751

will thus only replace some of the bytes of XkbDfltAccessXOptions, which of them
will depend on endianness.

Best,
Michael

Attachment: pgpT3qmUQoOtm.pgp
Description: PGP signature


Reply to: