Bug 8252

Summary: xcb fails to build due to 'deprecated' attribute
Product: XCB Reporter: Andres Salomon <dilinger>
Component: LibraryAssignee: Jamey Sharp <jamey>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: high    
Version: unspecified   
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments: Use Xfuncproto.h's _X_DEPRECATED

Description Andres Salomon 2006-09-13 11:43:13 UTC
Building xcb from git fails with the following error:

 gcc -DHAVE_CONFIG_H -I. -I. -I. -Wall -pedantic -Wpointer-arith
-Wstrict-prototypes -Wmissing-declarations -Wnested-externs -g
-I/usr/local/include -I/usr/local/include -I/usr/local/include -g -O2
-MT xcb_xlib.lo -MD -MP -MF .deps/xcb_xlib.Tpo -c xcb_xlib.c  -fPIC
-DPIC -o .libs/xcb_xlib.o
In file included from xcb_xlib.c:26:
xcbxlib.h:35: warning: no previous declaration for
'XCBGetQueuedRequestRead'
xcbxlib.h: In function 'XCBGetQueuedRequestRead':
xcbxlib.h:35: error: expected declaration specifiers before 'deprecated'
In file included from xcb_xlib.c:27:
xcbint.h:42: warning: empty declaration
xcbint.h:50: error: storage class specified for parameter
'XCBListFreeFunc'
xcbint.h:52: error: storage class specified for parameter '_xcb_map'
xcbint.h:54: error: expected declaration specifiers before '_xcb_map'
xcbint.h:55: error: expected ')' before '*' token
xcbint.h:56: error: expected ')' before '*' token
xcbint.h:57: error: expected ')' before '*' token
xcbint.h:74: error: storage class specified for parameter '_xcb_out'
xcbint.h:76: error: expected ')' before '*' token
xcbint.h:77: error: expected ')' before '*' token
xcbint.h:98: error: expected specifier-qualifier-list before '_xcb_map'
xcbint.h:105: error: storage class specified for parameter '_xcb_in'
xcbint.h:107: error: expected ')' before '*' token
xcbint.h:108: error: expected ')' before '*' token
xcbint.h:124: error: storage class specified for parameter '_xcb_xid'
xcbint.h:136: error: storage class specified for parameter '_xcb_ext'
xcbint.h:151: error: expected specifier-qualifier-list before '_xcb_in'
xcbint.h:157: warning: empty declaration

The issue is that the 'deprecated' attribute is used in xcbxlib.h,
without gcc's __attribute__(()) syntax.
Comment 1 Andres Salomon 2006-09-13 11:44:28 UTC
Created attachment 6946 [details] [review]
Use Xfuncproto.h's _X_DEPRECATED
Comment 2 Jamey Sharp 2006-09-13 12:26:42 UTC
Quick catch! I fixed it by actually removing the deprecated functions though. :-)

Fixed in commit 5a88ac2a5ef9601c58b93f5d5c19f6aac303be85.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.