aboutsummaryrefslogtreecommitdiff
path: root/zencore/include
diff options
context:
space:
mode:
authorMartin Ridgers <[email protected]>2021-11-18 14:51:58 +0100
committerMartin Ridgers <[email protected]>2021-11-18 14:52:30 +0100
commite0864ac30a3e2ead6cc42d55d98ed79da77e0606 (patch)
treebdf8f21cebe0f122335964da1733c1321119a0ad /zencore/include
parentSet sentry database location to use Zen's GlobalOptions.DataDir (diff)
downloadzen-e0864ac30a3e2ead6cc42d55d98ed79da77e0606.tar.xz
zen-e0864ac30a3e2ead6cc42d55d98ed79da77e0606.zip
Filled out ZEN_THIRDPARTY_ macros for Clang and GCC
Diffstat (limited to 'zencore/include')
-rw-r--r--zencore/include/zencore/zencore.h20
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