diff options
Diffstat (limited to 'gcc/system.h')
-rw-r--r-- | gcc/system.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/gcc/system.h b/gcc/system.h index 78a7da6..8a17197 100644 --- a/gcc/system.h +++ b/gcc/system.h @@ -752,9 +752,14 @@ extern void fancy_abort (const char *, int, const char *) ATTRIBUTE_NORETURN; #define STATIC_CONSTANT_P(X) (false && (X)) #endif -/* Until we can use C++11's static_assert. */ +/* static_assert (COND, MESSAGE) is available in C++11 onwards. */ +#if __cplusplus >= 201103L +#define STATIC_ASSERT(X) \ + static_assert ((X), #X) +#else #define STATIC_ASSERT(X) \ typedef int assertion1[(X) ? 1 : -1] ATTRIBUTE_UNUSED +#endif /* Provide a fake boolean type. We make no attempt to use the C99 _Bool, as it may not be available in the bootstrap compiler, |