| Summary: | Xlib-xcb.h: _XFUNCPROTOBEGIN/END (extern "C") missing, breaks C++ linking | ||||||
|---|---|---|---|---|---|---|---|
| Product: | xorg | Reporter: | Riku Salminen <rsalmin2> | ||||
| Component: | Lib/Xlib | Assignee: | Xorg Project Team <xorg-team> | ||||
| Status: | RESOLVED FIXED | QA Contact: | Xorg Project Team <xorg-team> | ||||
| Severity: | normal | ||||||
| Priority: | medium | CC: | xcb | ||||
| Version: | git | ||||||
| Hardware: | Other | ||||||
| OS: | All | ||||||
| Whiteboard: | |||||||
| i915 platform: | i915 features: | ||||||
| Attachments: |
|
||||||
commit 640fec5f4feacd01a00eea3dcd4edb220907d3dc Author: Julien Cristau <jcristau@debian.org> Date: Sun Aug 2 17:18:31 2009 +0200 Add _XFUNCPROTOBEGIN/END to Xlib-xcb.h X.Org bug#22252 <https://bugs.freedesktop.org/show_bug.cgi?id=22252> Reported-by: Riku Salminen <rsalmin2@cc.hut.fi> Signed-off-by: Julien Cristau <jcristau@debian.org> |
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.
Created attachment 26712 [details] Fixed version of Xlib-xcb.h, added _XFUNCPROTOBEGIN/END to solve C++ linking problems xorg/lib/libX11/include/X11/Xlib-xcb.h is missing extern "C" specifier. This breaks linking X11-xcb with C++ applications, resulting in undefined reference errors to Xlib-xcb.h functions (XGetXCBConnection, XSetEventQueueOwner) due to C++ name mangling. Can be easily solved by adding _XFUNCPROTOBEGIN and _XFUNCPROTO end around the function prototypes in the file (seems to be the libX11 convention) or just extern "C". Attached fixed version of the Xlib-xcb.h file.