gmacros.h: avoid using _Static_assert in C++17 mode

Closes #2067
This commit is contained in:
Alexander Pyhalov 2020-03-17 22:00:05 +03:00
parent 9aa3361a57
commit 0f17659e5a

View File

@ -736,7 +736,7 @@
#ifndef __GI_SCANNER__ /* The static assert macro really confuses the introspection parser */ #ifndef __GI_SCANNER__ /* The static assert macro really confuses the introspection parser */
#define G_PASTE_ARGS(identifier1,identifier2) identifier1 ## identifier2 #define G_PASTE_ARGS(identifier1,identifier2) identifier1 ## identifier2
#define G_PASTE(identifier1,identifier2) G_PASTE_ARGS (identifier1, identifier2) #define G_PASTE(identifier1,identifier2) G_PASTE_ARGS (identifier1, identifier2)
#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L #if !defined(__cplusplus) && defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L
#define G_STATIC_ASSERT(expr) _Static_assert (expr, "Expression evaluates to false") #define G_STATIC_ASSERT(expr) _Static_assert (expr, "Expression evaluates to false")
#elif (defined(__cplusplus) && __cplusplus >= 201103L) || \ #elif (defined(__cplusplus) && __cplusplus >= 201103L) || \
(defined(__cplusplus) && defined (_MSC_VER) && (_MSC_VER >= 1600)) || \ (defined(__cplusplus) && defined (_MSC_VER) && (_MSC_VER >= 1600)) || \