diff options
Diffstat (limited to 'zencore/include')
| -rw-r--r-- | zencore/include/zencore/zencore.h | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/zencore/include/zencore/zencore.h b/zencore/include/zencore/zencore.h index 0b3b9e6a4..65b770310 100644 --- a/zencore/include/zencore/zencore.h +++ b/zencore/include/zencore/zencore.h @@ -83,16 +83,28 @@ __pragma(warning(disable : 4668)) /* use of undefined preprocessor macro */ \ __pragma(warning(disable : 4267)) /* '=': conversion from 'size_t' to 'US' */ \ __pragma(warning(disable : 4127)) -# else -# define ZEN_THIRD_PARTY_INCLUDES_START +# elif ZEN_COMPILER_CLANG +# define ZEN_THIRD_PARTY_INCLUDES_START \ + _Pragma("clang diagnostic push") \ + _Pragma("clang diagnostic ignored \"-Wundef\"") \ + _Pragma("clang diagnostic ignored \"-Wunused-parameter\"") \ + _Pragma("clang diagnostic ignored \"-Wunused-variable\"") +# elif ZEN_COMPILER_GCC +# define ZEN_THIRD_PARTY_INCLUDES_START \ + _Pragma("GCC diagnostic push") \ + /* NB. ignoring -Wundef doesn't work with GCC */ \ + _Pragma("GCC diagnostic ignored \"-Wunused-parameter\"") \ + _Pragma("GCC diagnostic ignored \"-Wunused-variable\"") # endif #endif #ifndef ZEN_THIRD_PARTY_INCLUDES_END # if ZEN_COMPILER_MSC # define ZEN_THIRD_PARTY_INCLUDES_END __pragma(warning(pop)) -# else -# define ZEN_THIRD_PARTY_INCLUDES_END +# elif ZEN_COMPILER_CLANG +# define ZEN_THIRD_PARTY_INCLUDES_END _Pragma("clang diagnostic pop") +# elif ZEN_COMPILER_GCC +# define ZEN_THIRD_PARTY_INCLUDES_END _Pragma("GCC diagnostic pop") # endif #endif |