Package: libxt Version: 1:1.1.4-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 -shared -fPIC -DPIC .libs/ActionHook.o .libs/Alloc.o
.libs/ArgList.o .libs/Callback.o .libs/ClickTime.o .libs/Composite.o
.libs/Constraint.o .libs/Convert.o .libs/Converters.o .libs/Core.o
.libs/Create.o .libs/Destroy.o .libs/Display.o .libs/Error.o .libs/Event.o
.libs/EventUtil.o .libs/Functions.o .libs/GCManager.o .libs/Geometry.o
.libs/GetActKey.o .libs/GetResList.o .libs/GetValues.o .libs/HookObj.o
.libs/Hooks.o .libs/Initialize.o .libs/Intrinsic.o .libs/Keyboard.o
.libs/Manage.o .libs/NextEvent.o .libs/Object.o .libs/PassivGrab.o
.libs/Pointer.o .libs/Popup.o .libs/PopupCB.o .libs/RectObj.o .libs/ResConfig.o
.libs/Resources.o .libs/Selection.o .libs/SetSens.o .libs/SetValues.o
.libs/SetWMCW.o .libs/Shell.o .libs/TMaction.o .libs/TMgrab.o .libs/TMkey.o
.libs/TMparse.o .libs/TMprint.o .libs/TMstate.o .libs/Threads.o
.libs/VarCreate.o .libs/VarGet.o .libs/Varargs.o .libs/Vendor.o
.libs/sharedlib.o .libs/StringDefs.o -lSM -lICE -lX11 -O2 -Wl,-z -Wl,relro
-Wl,-soname -Wl,libXt.so.6 -o .libs/libXt.so.6.0.0
error: conflicting function declarations "XtWidgetToApplicationContext"
old definition in module Callback file ../../include/X11/Intrinsic.h line 1534
struct _XtAppStruct * (struct _WidgetRec *)
new definition in module Core file ../../include/X11/Intrinsic.h line 1534
struct _XtAppStruct * (struct _WidgetRec *)
reason for conflict at _XtAppStruct.destroy_callbacks in types listed below
(struct/struct):
composite type component counts differ (4/3)
struct internalCallbackRec {
unsigned short int count;
char is_padded;
char call_state;
unsigned int align_pad;
}
struct internalCallbackRec {
unsigned short int count;
char is_padded;
char call_state;
}
Makefile:525: recipe for target 'libXt.la' failed
make[4]: *** [libXt.la] Error 64
make[4]: Leaving directory
'/srv/jenkins-slave/workspace/sid-goto-cc-libxt/libxt-1.1.4/build/src'
Makefile:454: recipe for target 'all' failed
make[3]: *** [all] Error 2
Having structs of different size is dangerous enough, but here it seems to
highlight that LONG64 is not defined uniformly:
http://sources.debian.net/src/libxt/1:1.1.4-1/include/X11/CallbackI.h?hl=66#L66
As X11 makes heavy use of the macro, several inconsistencies may be hidden here.
Best,
Michael
pgpEjeEegap2P.pgp
Description: PGP signature

