Fix xkb.h compile warning on 32 bit systems

The message:

../../../3rdparty/xcb/include/xcb/xkb.h:118:5: error: this decimal
constant is unsigned only in ISO C90 [-Werror]

From the C89 standard:

"The type of an integer constant is the first of the corresponding
list in which its value can be represented. Unsuffixed decimal: int,
long int, unsigned long int;"

In the later standards "unsigned long int" is removed from the "Unsuffixed decimal"
list.

If integer constant is suffixed by the letter u or U, then the list is:
unsigned int, unsigned long int, ..

"unsigned long int" is sufficient on 32 bit systems to store the values of
XCB_XKB_CONTROL_PER_KEY_REPEAT and XCB_XKB_CONTROL_CONTROLS_ENABLED

Task-number: QTBUG-34142
Change-Id: Ic23781fcd00d4901ec9bb5a85068f4315c14bfb8
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
bb10
Gatis Paeglis 2013-11-20 16:28:42 +01:00 committed by The Qt Project
parent 885bd1d0e5
commit fe312204a3
2 changed files with 17 additions and 2 deletions

View File

@ -114,8 +114,8 @@ typedef enum xcb_xkb_control_t {
XCB_XKB_CONTROL_GROUPS_WRAP = 134217728,
XCB_XKB_CONTROL_INTERNAL_MODS = 268435456,
XCB_XKB_CONTROL_IGNORE_LOCK_MODS = 536870912,
XCB_XKB_CONTROL_PER_KEY_REPEAT = 1073741824,
XCB_XKB_CONTROL_CONTROLS_ENABLED = 2147483648
XCB_XKB_CONTROL_PER_KEY_REPEAT = 1073741824u,
XCB_XKB_CONTROL_CONTROLS_ENABLED = 2147483648u
} xcb_xkb_control_t;
typedef enum xcb_xkb_axfb_opt_t {

View File

@ -0,0 +1,15 @@
diff --git a/src/3rdparty/xcb/include/xcb/xkb.h b/src/3rdparty/xcb/include/xcb/xkb.h
index 44b0a8d..0180ec8 100644
--- a/src/3rdparty/xcb/include/xcb/xkb.h
+++ b/src/3rdparty/xcb/include/xcb/xkb.h
@@ -114,8 +114,8 @@ typedef enum xcb_xkb_control_t {
XCB_XKB_CONTROL_GROUPS_WRAP = 134217728,
XCB_XKB_CONTROL_INTERNAL_MODS = 268435456,
XCB_XKB_CONTROL_IGNORE_LOCK_MODS = 536870912,
- XCB_XKB_CONTROL_PER_KEY_REPEAT = 1073741824,
- XCB_XKB_CONTROL_CONTROLS_ENABLED = 2147483648
+ XCB_XKB_CONTROL_PER_KEY_REPEAT = 1073741824u,
+ XCB_XKB_CONTROL_CONTROLS_ENABLED = 2147483648u
} xcb_xkb_control_t;
typedef enum xcb_xkb_axfb_opt_t {