cleanup defines

This commit is contained in:
BlackMATov
2023-03-11 07:35:30 +07:00
parent 7954964ed3
commit 37ce8b272f
2 changed files with 66 additions and 12 deletions

View File

@@ -34,6 +34,10 @@
#include <vector>
#include <version>
//
//
//
#if !defined(META_HPP_NO_EXCEPTIONS) && !defined(__cpp_exceptions)
# define META_HPP_NO_EXCEPTIONS
#endif
@@ -42,6 +46,10 @@
# define META_HPP_NO_RTTI
#endif
//
//
//
#if !defined(META_HPP_FWD)
# define META_HPP_FWD(v) std::forward<decltype(v)>(v)
#endif
@@ -61,15 +69,30 @@
# define META_HPP_PP_CAT_I(x, y) x##y
#endif
//
//
//
#define META_HPP_CLANG_COMPILER_ID 1
#define META_HPP_GCC_COMPILER_ID 2
#define META_HPP_MSVC_COMPILER_ID 3
#define META_HPP_UNKNOWN_COMPILER_ID 4
#if defined(__clang__)
# define META_HPP_CLANG
# define META_HPP_COMPILER_ID META_HPP_CLANG_COMPILER_ID
#elif defined(__GNUC__)
# define META_HPP_GCC
# define META_HPP_COMPILER_ID META_HPP_GCC_COMPILER_ID
#elif defined(_MSC_VER)
# define META_HPP_MSVC
# define META_HPP_COMPILER_ID META_HPP_MSVC_COMPILER_ID
#else
# define META_HPP_COMPILER_ID META_HPP_UNKNOWN_COMPILER_ID
#endif
#if defined(META_HPP_CLANG)
//
//
//
#if META_HPP_COMPILER_ID == META_HPP_CLANG_COMPILER_ID
# define META_HPP_CLANG_PRAGMA_TO_STR(x) _Pragma(#x)
# define META_HPP_CLANG_IGNORE_WARNING(w) META_HPP_CLANG_PRAGMA_TO_STR(clang diagnostic ignored w)
# define META_HPP_CLANG_IGNORE_WARNINGS_PUSH() _Pragma("clang diagnostic push")
@@ -81,7 +104,7 @@
# define META_HPP_CLANG_IGNORE_WARNINGS_POP()
#endif
#if defined(META_HPP_GCC)
#if META_HPP_COMPILER_ID == META_HPP_GCC_COMPILER_ID
# define META_HPP_GCC_PRAGMA_TO_STR(x) _Pragma(#x)
# define META_HPP_GCC_IGNORE_WARNING(w) META_HPP_GCC_PRAGMA_TO_STR(GCC diagnostic ignored w)
# define META_HPP_GCC_IGNORE_WARNINGS_PUSH() _Pragma("GCC diagnostic push")
@@ -93,7 +116,7 @@
# define META_HPP_GCC_IGNORE_WARNINGS_POP()
#endif
#if defined(META_HPP_MSVC)
#if META_HPP_COMPILER_ID == META_HPP_MSVC_COMPILER_ID
# define META_HPP_MSVC_IGNORE_WARNING(w) __pragma(warning(disable : w))
# define META_HPP_MSVC_IGNORE_WARNINGS_PUSH() __pragma(warning(push))
# define META_HPP_MSVC_IGNORE_WARNINGS_POP() __pragma(warning(pop))
@@ -103,6 +126,10 @@
# define META_HPP_MSVC_IGNORE_WARNINGS_POP()
#endif
//
//
//
#define META_HPP_IGNORE_OVERRIDE_WARNINGS_PUSH() \
META_HPP_CLANG_IGNORE_WARNINGS_PUSH() \
META_HPP_CLANG_IGNORE_WARNING("-Wunknown-warning-option") \