summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/xcb_auth.c1
-rw-r--r--src/xcbint.h10
2 files changed, 11 insertions, 0 deletions
diff --git a/src/xcb_auth.c b/src/xcb_auth.c
index 26eebbb..6937afb 100644
--- a/src/xcb_auth.c
+++ b/src/xcb_auth.c
@@ -134,6 +134,7 @@ static Xauth *get_authptr(struct sockaddr *sockname, int display)
}
addr += 12;
/* if v4-mapped, fall through. */
+ XCB_ALLOW_FALLTHRU
#endif
case AF_INET:
if(!addr)
diff --git a/src/xcbint.h b/src/xcbint.h
index cef9821..524d6c7 100644
--- a/src/xcbint.h
+++ b/src/xcbint.h
@@ -38,6 +38,16 @@
#pragma GCC visibility push(hidden)
#endif
+#ifndef __has_attribute
+# define __has_attribute(x) 0 /* Compatibility with older compilers. */
+#endif
+
+#if __has_attribute(fallthrough)
+# define XCB_ALLOW_FALLTHRU __attribute__ ((fallthrough));
+#else
+# define XCB_ALLOW_FALLTHRU /* FALLTHRU */
+#endif
+
enum workarounds {
WORKAROUND_NONE,
WORKAROUND_GLX_GET_FB_CONFIGS_BUG,