Thanks for the bug report! It should probably be pushed
upstream at some point. Do you want commit privs to fix it?
Bart
In message <[EMAIL PROTECTED]> you wrote:
> Package: libxcb-shape0-dev
> Version: 1.1-1.1
>
> The header file xcb/shape.h can't be used in C++ directly because it is
> missing the
>
> #ifdef __cplusplus
> extern "C" {
> #endif
>
> #ifdef __cplusplus
> } // extern "C"
> #endif
>
> wrappers. This causes linker errors, because to C and C++ the declarations in
> the headers declare different symbols. Note that this doesn't only affect the
> shape header, others are affected, too. I used
>
> for i in /usr/include/xcb/*; do
> grep 'extern "C"' $i >/dev/null || echo $i
> done
>
> to find header files without the wrapper and it reported a few more from
> other
> XCB libraries:
>
> /usr/include/xcb/bigreq.h
> /usr/include/xcb/render.h
> /usr/include/xcb/shape.h
> /usr/include/xcb/shm.h
> /usr/include/xcb/xc_misc.h
> /usr/include/xcb/xcb_atom.h
> /usr/include/xcb/xcb_renderutil.h
> /usr/include/xcb/xcbxlib.h
> /usr/include/xcb/xproto.h
>
> Note: xproto.h might be a false positive, because it is included by xcb.h
> inside its extern "C" wrapper. Further, you can't use it on its own anyway
> due to its circular dependency on xcb.h. xproto.h defines its include-guard
> macros and then includes xcb.h, which in turn includes xproto.h a second
> time. However, the include guards make that a no-op so lateron when using
> parts of xproto.h it fails. I don't think that file should be included on its
> own but only by xcb.h, so it should generate a suitable error and the
> #inlude "xcb.h" should be removed from it.
>
>
> Workaround:
>
> extern "C" {
> #include <xcb/shape.h>
> }
>
> Uli
>
>
> _______________________________________________
> Xcb mailing list
> [EMAIL PROTECTED]
> http://lists.freedesktop.org/mailman/listinfo/xcb
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]