diff options
author | Alan Coopersmith <alan.coopersmith@oracle.com> | 2012-12-16 17:44:42 -0800 |
---|---|---|
committer | Ulrich Sibiller <uli42@gmx.de> | 2016-10-19 21:40:27 +0200 |
commit | 878040bf0bdb5d791cbe2ac6e07899c149517a79 (patch) | |
tree | 0cd2eab18e65f3906339ba147a91bdd306da47a4 | |
parent | 9b5f99c37b4c48406eda5af2e58eb57b9a33c164 (diff) | |
download | nx-libs-878040bf0bdb5d791cbe2ac6e07899c149517a79.tar.gz nx-libs-878040bf0bdb5d791cbe2ac6e07899c149517a79.tar.bz2 nx-libs-878040bf0bdb5d791cbe2ac6e07899c149517a79.zip |
Tell clang not to report -Wpadded warnings on public headers we can't fix
Better to silence the compiler warning than break ABI.
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Backported-to-NX-by: Ulrich Sibiller <uli42@gmx.de>
-rw-r--r-- | nx-X11/lib/X11/Xcms.h | 12 | ||||
-rw-r--r-- | nx-X11/lib/X11/Xlib.h | 12 | ||||
-rw-r--r-- | nx-X11/lib/X11/Xlibint.h | 12 | ||||
-rw-r--r-- | nx-X11/lib/X11/Xutil.h | 12 |
4 files changed, 48 insertions, 0 deletions
diff --git a/nx-X11/lib/X11/Xcms.h b/nx-X11/lib/X11/Xcms.h index 7f7c1553a..3b0410533 100644 --- a/nx-X11/lib/X11/Xcms.h +++ b/nx-X11/lib/X11/Xcms.h @@ -32,6 +32,14 @@ #include <nx-X11/Xlib.h> +/* The Xcms structs are full of implicit padding to properly align members. + We can't clean that up without breaking ABI, so tell clang not to bother + complaining about it. */ +#ifdef __clang__ +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wpadded" +#endif + /* * XCMS Status Values */ @@ -799,6 +807,10 @@ extern Visual *XcmsVisualOfCCC ( XcmsCCC /* ccc */ ); +#ifdef __clang__ +#pragma clang diagnostic pop +#endif + _XFUNCPROTOEND #endif /* !defined(_X11_XCMS_H_) && !defined(_XCMS_H_) */ diff --git a/nx-X11/lib/X11/Xlib.h b/nx-X11/lib/X11/Xlib.h index 2d688d022..9ef4e00b0 100644 --- a/nx-X11/lib/X11/Xlib.h +++ b/nx-X11/lib/X11/Xlib.h @@ -82,6 +82,14 @@ _Xmblen( November 2000. Its presence is indicated through the following macro. */ #define X_HAVE_UTF8_STRING 1 +/* The Xlib structs are full of implicit padding to properly align members. + We can't clean that up without breaking ABI, so tell clang not to bother + complaining about it. */ +#ifdef __clang__ +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wpadded" +#endif + typedef char *XPointer; #define Bool int @@ -4037,6 +4045,10 @@ extern void XFreeEventData( XGenericEventCookie* /* cookie*/ ); +#ifdef __clang__ +#pragma clang diagnostic pop +#endif + _XFUNCPROTOEND #endif /* #if !defined(_X11_XLIB_H_) && !defined(_XLIB_H_) */ diff --git a/nx-X11/lib/X11/Xlibint.h b/nx-X11/lib/X11/Xlibint.h index ead343eae..ee39c7cf0 100644 --- a/nx-X11/lib/X11/Xlibint.h +++ b/nx-X11/lib/X11/Xlibint.h @@ -67,6 +67,14 @@ from The Open Group. #include <nx-X11/Xproto.h> /* to declare xEvent */ #include <nx-X11/XlibConf.h> /* for configured options like XTHREADS */ +/* The Xlib structs are full of implicit padding to properly align members. + We can't clean that up without breaking ABI, so tell clang not to bother + complaining about it. */ +#ifdef __clang__ +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wpadded" +#endif + #ifdef NX_TRANS_SOCKET #include <nx/NXvars.h> @@ -1386,6 +1394,10 @@ extern void xlocaledir( int buf_len ); +#ifdef __clang__ +#pragma clang diagnostic pop +#endif + _XFUNCPROTOEND #endif /* !defined(_X11_XLIBINT_H_) && !defined(_XLIBINT_H_) */ diff --git a/nx-X11/lib/X11/Xutil.h b/nx-X11/lib/X11/Xutil.h index 311a66c9d..55bedc96d 100644 --- a/nx-X11/lib/X11/Xutil.h +++ b/nx-X11/lib/X11/Xutil.h @@ -54,6 +54,14 @@ SOFTWARE. #include <nx-X11/Xlib.h> #include <nx-X11/keysym.h> +/* The Xlib structs are full of implicit padding to properly align members. + We can't clean that up without breaking ABI, so tell clang not to bother + complaining about it. */ +#ifdef __clang__ +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wpadded" +#endif + /* * Bitmask returned by XParseGeometry(). Each bit tells if the corresponding * value (x, y, width, height) was found in the parsed string. @@ -822,6 +830,10 @@ extern int XXorRegion( Region /* dr_return */ ); +#ifdef __clang__ +#pragma clang diagnostic pop +#endif + _XFUNCPROTOEND #endif /* !defined(_X11_XUTIL_H_) && !defined(_XUTIL_H_) */ |