From: Ondřej Surý Date: Fri, 28 Feb 2025 20:51:18 +0000 (+0100) Subject: Remove STATIC_ASSERT variants in favor of the C11 variant X-Git-Tag: ondrej/lock-free-qpzone-reads-v1~11^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ce7879c924a6f0fb50029831dad107c52a7d6281;p=thirdparty%2Fbind9.git Remove STATIC_ASSERT variants in favor of the C11 variant Previously, a gcc < 4.6 shim for _Static_assert() was included. Such an old compiler is not supported now anyway, so the macro variant has been removed in favor of a single definition using _Static_assert(). --- diff --git a/lib/isc/include/isc/util.h b/lib/isc/include/isc/util.h index 805e518afce..9fed22df60c 100644 --- a/lib/isc/include/isc/util.h +++ b/lib/isc/include/isc/util.h @@ -140,18 +140,7 @@ #define ISC_NO_SANITIZE_THREAD #endif /* if __SANITIZE_THREAD__ */ -#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR >= 6) #define STATIC_ASSERT(cond, msg) _Static_assert(cond, msg) -#elif __has_feature(c_static_assert) -#define STATIC_ASSERT(cond, msg) _Static_assert(cond, msg) -#else /* if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR >= 6) */ - -/* Courtesy of Joseph Quinsey: https://godbolt.org/z/K9RvWS */ -#define TOKENPASTE(a, b) a##b /* "##" is the "Token Pasting Operator" */ -#define EXPAND_THEN_PASTE(a, b) TOKENPASTE(a, b) /* expand then paste */ -#define STATIC_ASSERT(x, msg) \ - enum { EXPAND_THEN_PASTE(ASSERT_line_, __LINE__) = 1 / ((msg) && (x)) } -#endif /* if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR >= 6) */ #ifdef UNIT_TESTING extern void