From 73a8dce44b39e073cb74fdcb383c35795bacd42d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Li=C5=A1ka?= Date: Thu, 5 May 2022 14:18:58 +0200 Subject: [PATCH] Simplify STATIC_ASSERT macro. For C++, use always __static_assert and for C, use the negative array index. gcc/ChangeLog: * basic-block.h (STATIC_ASSERT): Use normal STATIC_ASSERT. * system.h (STATIC_ASSERT): Define as static_assert for C++ and fallback to array index in C. --- gcc/basic-block.h | 5 +---- gcc/system.h | 3 +-- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/gcc/basic-block.h b/gcc/basic-block.h index e3fff1f6975..21a9b24dbf9 100644 --- a/gcc/basic-block.h +++ b/gcc/basic-block.h @@ -158,10 +158,7 @@ struct GTY((chain_next ("%h.next_bb"), chain_prev ("%h.prev_bb"))) basic_block_d /* This ensures that struct gimple_bb_info is smaller than struct rtl_bb_info, so that inlining the former into basic_block_def is the better choice. */ -typedef int __assert_gimple_bb_smaller_rtl_bb - [(int) sizeof (struct rtl_bb_info) - - (int) sizeof (struct gimple_bb_info)]; - +STATIC_ASSERT (sizeof (rtl_bb_info) >= sizeof (gimple_bb_info)); #define BB_FREQ_MAX 10000 diff --git a/gcc/system.h b/gcc/system.h index 1121af485a4..1c783c5331d 100644 --- a/gcc/system.h +++ b/gcc/system.h @@ -835,8 +835,7 @@ extern void fancy_abort (const char *, int, const char *) #define STATIC_CONSTANT_P(X) (false && (X)) #endif -/* static_assert (COND, MESSAGE) is available in C++11 onwards. */ -#if __cplusplus >= 201103L +#ifdef __cplusplus #define STATIC_ASSERT(X) \ static_assert ((X), #X) #else