mirror of
https://github.com/nlohmann/json.git
synced 2025-01-20 00:03:02 +08:00
⬆️ Hedley v15
This commit is contained in:
parent
e754ef7087
commit
bb90e34d22
141
include/nlohmann/thirdparty/hedley/hedley.hpp
vendored
141
include/nlohmann/thirdparty/hedley/hedley.hpp
vendored
@ -10,11 +10,11 @@
|
||||
* SPDX-License-Identifier: CC0-1.0
|
||||
*/
|
||||
|
||||
#if !defined(JSON_HEDLEY_VERSION) || (JSON_HEDLEY_VERSION < 14)
|
||||
#if !defined(JSON_HEDLEY_VERSION) || (JSON_HEDLEY_VERSION < 15)
|
||||
#if defined(JSON_HEDLEY_VERSION)
|
||||
#undef JSON_HEDLEY_VERSION
|
||||
#endif
|
||||
#define JSON_HEDLEY_VERSION 14
|
||||
#define JSON_HEDLEY_VERSION 15
|
||||
|
||||
#if defined(JSON_HEDLEY_STRINGIFY_EX)
|
||||
#undef JSON_HEDLEY_STRINGIFY_EX
|
||||
@ -381,7 +381,7 @@
|
||||
#if __VER__ > 1000
|
||||
#define JSON_HEDLEY_IAR_VERSION JSON_HEDLEY_VERSION_ENCODE((__VER__ / 1000000), ((__VER__ / 1000) % 1000), (__VER__ % 1000))
|
||||
#else
|
||||
#define JSON_HEDLEY_IAR_VERSION JSON_HEDLEY_VERSION_ENCODE(VER / 100, __VER__ % 100, 0)
|
||||
#define JSON_HEDLEY_IAR_VERSION JSON_HEDLEY_VERSION_ENCODE(__VER__ / 100, __VER__ % 100, 0)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
@ -458,6 +458,22 @@
|
||||
#define JSON_HEDLEY_PELLES_VERSION_CHECK(major,minor,patch) (0)
|
||||
#endif
|
||||
|
||||
#if defined(JSON_HEDLEY_MCST_LCC_VERSION)
|
||||
#undef JSON_HEDLEY_MCST_LCC_VERSION
|
||||
#endif
|
||||
#if defined(__LCC__) && defined(__LCC_MINOR__)
|
||||
#define JSON_HEDLEY_MCST_LCC_VERSION JSON_HEDLEY_VERSION_ENCODE(__LCC__ / 100, __LCC__ % 100, __LCC_MINOR__)
|
||||
#endif
|
||||
|
||||
#if defined(JSON_HEDLEY_MCST_LCC_VERSION_CHECK)
|
||||
#undef JSON_HEDLEY_MCST_LCC_VERSION_CHECK
|
||||
#endif
|
||||
#if defined(JSON_HEDLEY_MCST_LCC_VERSION)
|
||||
#define JSON_HEDLEY_MCST_LCC_VERSION_CHECK(major,minor,patch) (JSON_HEDLEY_MCST_LCC_VERSION >= JSON_HEDLEY_VERSION_ENCODE(major, minor, patch))
|
||||
#else
|
||||
#define JSON_HEDLEY_MCST_LCC_VERSION_CHECK(major,minor,patch) (0)
|
||||
#endif
|
||||
|
||||
#if defined(JSON_HEDLEY_GCC_VERSION)
|
||||
#undef JSON_HEDLEY_GCC_VERSION
|
||||
#endif
|
||||
@ -467,6 +483,7 @@
|
||||
!defined(JSON_HEDLEY_INTEL_VERSION) && \
|
||||
!defined(JSON_HEDLEY_PGI_VERSION) && \
|
||||
!defined(JSON_HEDLEY_ARM_VERSION) && \
|
||||
!defined(JSON_HEDLEY_CRAY_VERSION) && \
|
||||
!defined(JSON_HEDLEY_TI_VERSION) && \
|
||||
!defined(JSON_HEDLEY_TI_ARMCL_VERSION) && \
|
||||
!defined(JSON_HEDLEY_TI_CL430_VERSION) && \
|
||||
@ -474,7 +491,8 @@
|
||||
!defined(JSON_HEDLEY_TI_CL6X_VERSION) && \
|
||||
!defined(JSON_HEDLEY_TI_CL7X_VERSION) && \
|
||||
!defined(JSON_HEDLEY_TI_CLPRU_VERSION) && \
|
||||
!defined(__COMPCERT__)
|
||||
!defined(__COMPCERT__) && \
|
||||
!defined(JSON_HEDLEY_MCST_LCC_VERSION)
|
||||
#define JSON_HEDLEY_GCC_VERSION JSON_HEDLEY_GNUC_VERSION
|
||||
#endif
|
||||
|
||||
@ -490,17 +508,21 @@
|
||||
#if defined(JSON_HEDLEY_HAS_ATTRIBUTE)
|
||||
#undef JSON_HEDLEY_HAS_ATTRIBUTE
|
||||
#endif
|
||||
#if defined(__has_attribute)
|
||||
#define JSON_HEDLEY_HAS_ATTRIBUTE(attribute) __has_attribute(attribute)
|
||||
#if \
|
||||
defined(__has_attribute) && \
|
||||
( \
|
||||
(!defined(JSON_HEDLEY_IAR_VERSION) || JSON_HEDLEY_IAR_VERSION_CHECK(8,5,9)) \
|
||||
)
|
||||
# define JSON_HEDLEY_HAS_ATTRIBUTE(attribute) __has_attribute(attribute)
|
||||
#else
|
||||
#define JSON_HEDLEY_HAS_ATTRIBUTE(attribute) (0)
|
||||
# define JSON_HEDLEY_HAS_ATTRIBUTE(attribute) (0)
|
||||
#endif
|
||||
|
||||
#if defined(JSON_HEDLEY_GNUC_HAS_ATTRIBUTE)
|
||||
#undef JSON_HEDLEY_GNUC_HAS_ATTRIBUTE
|
||||
#endif
|
||||
#if defined(__has_attribute)
|
||||
#define JSON_HEDLEY_GNUC_HAS_ATTRIBUTE(attribute,major,minor,patch) __has_attribute(attribute)
|
||||
#define JSON_HEDLEY_GNUC_HAS_ATTRIBUTE(attribute,major,minor,patch) JSON_HEDLEY_HAS_ATTRIBUTE(attribute)
|
||||
#else
|
||||
#define JSON_HEDLEY_GNUC_HAS_ATTRIBUTE(attribute,major,minor,patch) JSON_HEDLEY_GNUC_VERSION_CHECK(major,minor,patch)
|
||||
#endif
|
||||
@ -509,7 +531,7 @@
|
||||
#undef JSON_HEDLEY_GCC_HAS_ATTRIBUTE
|
||||
#endif
|
||||
#if defined(__has_attribute)
|
||||
#define JSON_HEDLEY_GCC_HAS_ATTRIBUTE(attribute,major,minor,patch) __has_attribute(attribute)
|
||||
#define JSON_HEDLEY_GCC_HAS_ATTRIBUTE(attribute,major,minor,patch) JSON_HEDLEY_HAS_ATTRIBUTE(attribute)
|
||||
#else
|
||||
#define JSON_HEDLEY_GCC_HAS_ATTRIBUTE(attribute,major,minor,patch) JSON_HEDLEY_GCC_VERSION_CHECK(major,minor,patch)
|
||||
#endif
|
||||
@ -873,6 +895,8 @@
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"")
|
||||
#elif JSON_HEDLEY_MSVC_VERSION_CHECK(15,0,0)
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED __pragma(warning(disable:4996))
|
||||
#elif JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED _Pragma("diag_suppress 1215,1444")
|
||||
#elif \
|
||||
JSON_HEDLEY_TI_VERSION_CHECK(15,12,0) || \
|
||||
(JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(4,8,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \
|
||||
@ -923,6 +947,8 @@
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS _Pragma("diag_suppress 163")
|
||||
#elif JSON_HEDLEY_IAR_VERSION_CHECK(8,0,0)
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS _Pragma("diag_suppress=Pe161")
|
||||
#elif JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS _Pragma("diag_suppress 161")
|
||||
#else
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS
|
||||
#endif
|
||||
@ -953,6 +979,8 @@
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES _Pragma("diag_suppress 1173")
|
||||
#elif JSON_HEDLEY_IAR_VERSION_CHECK(8,0,0)
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES _Pragma("diag_suppress=Pe1097")
|
||||
#elif JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES _Pragma("diag_suppress 1097")
|
||||
#else
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES
|
||||
#endif
|
||||
@ -970,6 +998,21 @@
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_CAST_QUAL
|
||||
#endif
|
||||
|
||||
#if defined(JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNUSED_FUNCTION)
|
||||
#undef JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNUSED_FUNCTION
|
||||
#endif
|
||||
#if JSON_HEDLEY_HAS_WARNING("-Wunused-function")
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNUSED_FUNCTION _Pragma("clang diagnostic ignored \"-Wunused-function\"")
|
||||
#elif JSON_HEDLEY_GCC_VERSION_CHECK(3,4,0)
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNUSED_FUNCTION _Pragma("GCC diagnostic ignored \"-Wunused-function\"")
|
||||
#elif JSON_HEDLEY_MSVC_VERSION_CHECK(1,0,0)
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNUSED_FUNCTION __pragma(warning(disable:4505))
|
||||
#elif JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNUSED_FUNCTION _Pragma("diag_suppress 3142")
|
||||
#else
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNUSED_FUNCTION
|
||||
#endif
|
||||
|
||||
#if defined(JSON_HEDLEY_DEPRECATED)
|
||||
#undef JSON_HEDLEY_DEPRECATED
|
||||
#endif
|
||||
@ -982,7 +1025,7 @@
|
||||
#define JSON_HEDLEY_DEPRECATED(since) __declspec(deprecated("Since " # since))
|
||||
#define JSON_HEDLEY_DEPRECATED_FOR(since, replacement) __declspec(deprecated("Since " #since "; use " #replacement))
|
||||
#elif \
|
||||
JSON_HEDLEY_HAS_EXTENSION(attribute_deprecated_with_message) || \
|
||||
(JSON_HEDLEY_HAS_EXTENSION(attribute_deprecated_with_message) && !defined(JSON_HEDLEY_IAR_VERSION)) || \
|
||||
JSON_HEDLEY_GCC_VERSION_CHECK(4,5,0) || \
|
||||
JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \
|
||||
JSON_HEDLEY_ARM_VERSION_CHECK(5,6,0) || \
|
||||
@ -992,7 +1035,8 @@
|
||||
JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(18,1,0) || \
|
||||
JSON_HEDLEY_TI_CL6X_VERSION_CHECK(8,3,0) || \
|
||||
JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,3,0)
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,3,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_DEPRECATED(since) __attribute__((__deprecated__("Since " #since)))
|
||||
#define JSON_HEDLEY_DEPRECATED_FOR(since, replacement) __attribute__((__deprecated__("Since " #since "; use " #replacement)))
|
||||
#elif defined(__cplusplus) && (__cplusplus >= 201402L)
|
||||
@ -1012,7 +1056,9 @@
|
||||
(JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,2,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \
|
||||
JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,5,0) || \
|
||||
JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0)
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10) || \
|
||||
JSON_HEDLEY_IAR_VERSION_CHECK(8,10,0)
|
||||
#define JSON_HEDLEY_DEPRECATED(since) __attribute__((__deprecated__))
|
||||
#define JSON_HEDLEY_DEPRECATED_FOR(since, replacement) __attribute__((__deprecated__))
|
||||
#elif \
|
||||
@ -1035,7 +1081,8 @@
|
||||
#if \
|
||||
JSON_HEDLEY_HAS_ATTRIBUTE(warning) || \
|
||||
JSON_HEDLEY_GCC_VERSION_CHECK(4,3,0) || \
|
||||
JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0)
|
||||
JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_UNAVAILABLE(available_since) __attribute__((__warning__("Not available until " #available_since)))
|
||||
#else
|
||||
#define JSON_HEDLEY_UNAVAILABLE(available_since)
|
||||
@ -1063,7 +1110,8 @@
|
||||
JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \
|
||||
(JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,15,0) && defined(__cplusplus)) || \
|
||||
JSON_HEDLEY_PGI_VERSION_CHECK(17,10,0)
|
||||
JSON_HEDLEY_PGI_VERSION_CHECK(17,10,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_WARN_UNUSED_RESULT __attribute__((__warn_unused_result__))
|
||||
#define JSON_HEDLEY_WARN_UNUSED_RESULT_MSG(msg) __attribute__((__warn_unused_result__))
|
||||
#elif (JSON_HEDLEY_HAS_CPP_ATTRIBUTE(nodiscard) >= 201907L)
|
||||
@ -1087,7 +1135,8 @@
|
||||
JSON_HEDLEY_HAS_ATTRIBUTE(sentinel) || \
|
||||
JSON_HEDLEY_GCC_VERSION_CHECK(4,0,0) || \
|
||||
JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \
|
||||
JSON_HEDLEY_ARM_VERSION_CHECK(5,4,0)
|
||||
JSON_HEDLEY_ARM_VERSION_CHECK(5,4,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_SENTINEL(position) __attribute__((__sentinel__(position)))
|
||||
#else
|
||||
#define JSON_HEDLEY_SENTINEL(position)
|
||||
@ -1098,7 +1147,9 @@
|
||||
#endif
|
||||
#if JSON_HEDLEY_IAR_VERSION_CHECK(8,0,0)
|
||||
#define JSON_HEDLEY_NO_RETURN __noreturn
|
||||
#elif JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0)
|
||||
#elif \
|
||||
JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_NO_RETURN __attribute__((__noreturn__))
|
||||
#elif defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L
|
||||
#define JSON_HEDLEY_NO_RETURN _Noreturn
|
||||
@ -1120,7 +1171,8 @@
|
||||
(JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,2,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \
|
||||
JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,5,0) || \
|
||||
JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0)
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \
|
||||
JSON_HEDLEY_IAR_VERSION_CHECK(8,10,0)
|
||||
#define JSON_HEDLEY_NO_RETURN __attribute__((__noreturn__))
|
||||
#elif JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,10,0)
|
||||
#define JSON_HEDLEY_NO_RETURN _Pragma("does_not_return")
|
||||
@ -1177,7 +1229,9 @@
|
||||
JSON_HEDLEY_GCC_VERSION_CHECK(4,5,0) || \
|
||||
JSON_HEDLEY_PGI_VERSION_CHECK(18,10,0) || \
|
||||
JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \
|
||||
JSON_HEDLEY_IBM_VERSION_CHECK(13,1,5)
|
||||
JSON_HEDLEY_IBM_VERSION_CHECK(13,1,5) || \
|
||||
JSON_HEDLEY_CRAY_VERSION_CHECK(10,0,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_UNREACHABLE() __builtin_unreachable()
|
||||
#elif defined(JSON_HEDLEY_ASSUME)
|
||||
#define JSON_HEDLEY_UNREACHABLE() JSON_HEDLEY_ASSUME(0)
|
||||
@ -1255,7 +1309,8 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
(JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,2,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \
|
||||
JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,5,0) || \
|
||||
JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0)
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_PRINTF_FORMAT(string_idx,first_to_check) __attribute__((__format__(__printf__, string_idx, first_to_check)))
|
||||
#elif JSON_HEDLEY_PELLES_VERSION_CHECK(6,0,0)
|
||||
#define JSON_HEDLEY_PRINTF_FORMAT(string_idx,first_to_check) __declspec(vaformat(printf,string_idx,first_to_check))
|
||||
@ -1292,7 +1347,8 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
#endif
|
||||
#if \
|
||||
(JSON_HEDLEY_HAS_BUILTIN(__builtin_expect_with_probability) && !defined(JSON_HEDLEY_PGI_VERSION)) || \
|
||||
JSON_HEDLEY_GCC_VERSION_CHECK(9,0,0)
|
||||
JSON_HEDLEY_GCC_VERSION_CHECK(9,0,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
# define JSON_HEDLEY_PREDICT(expr, value, probability) __builtin_expect_with_probability( (expr), (value), (probability))
|
||||
# define JSON_HEDLEY_PREDICT_TRUE(expr, probability) __builtin_expect_with_probability(!!(expr), 1 , (probability))
|
||||
# define JSON_HEDLEY_PREDICT_FALSE(expr, probability) __builtin_expect_with_probability(!!(expr), 0 , (probability))
|
||||
@ -1313,7 +1369,8 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \
|
||||
JSON_HEDLEY_TINYC_VERSION_CHECK(0,9,27) || \
|
||||
JSON_HEDLEY_CRAY_VERSION_CHECK(8,1,0)
|
||||
JSON_HEDLEY_CRAY_VERSION_CHECK(8,1,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
# define JSON_HEDLEY_PREDICT(expr, expected, probability) \
|
||||
(((probability) >= 0.9) ? __builtin_expect((expr), (expected)) : (JSON_HEDLEY_STATIC_CAST(void, expected), (expr)))
|
||||
# define JSON_HEDLEY_PREDICT_TRUE(expr, probability) \
|
||||
@ -1359,7 +1416,8 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
(JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,2,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \
|
||||
JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,5,0) || \
|
||||
JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0)
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_MALLOC __attribute__((__malloc__))
|
||||
#elif JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,10,0)
|
||||
#define JSON_HEDLEY_MALLOC _Pragma("returns_new_memory")
|
||||
@ -1392,7 +1450,8 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,5,0) || \
|
||||
JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \
|
||||
JSON_HEDLEY_PGI_VERSION_CHECK(17,10,0)
|
||||
JSON_HEDLEY_PGI_VERSION_CHECK(17,10,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
# define JSON_HEDLEY_PURE __attribute__((__pure__))
|
||||
#elif JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,10,0)
|
||||
# define JSON_HEDLEY_PURE _Pragma("does_not_write_global_data")
|
||||
@ -1428,7 +1487,8 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,5,0) || \
|
||||
JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \
|
||||
JSON_HEDLEY_PGI_VERSION_CHECK(17,10,0)
|
||||
JSON_HEDLEY_PGI_VERSION_CHECK(17,10,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_CONST __attribute__((__const__))
|
||||
#elif \
|
||||
JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,10,0)
|
||||
@ -1456,7 +1516,8 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \
|
||||
(JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,14,0) && defined(__cplusplus)) || \
|
||||
JSON_HEDLEY_IAR_VERSION_CHECK(8,0,0) || \
|
||||
defined(__clang__)
|
||||
defined(__clang__) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_RESTRICT __restrict
|
||||
#elif JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,3,0) && !defined(__cplusplus)
|
||||
#define JSON_HEDLEY_RESTRICT _Restrict
|
||||
@ -1484,7 +1545,8 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
JSON_HEDLEY_TI_CL2000_VERSION_CHECK(6,2,0) || \
|
||||
JSON_HEDLEY_TI_CL6X_VERSION_CHECK(8,0,0) || \
|
||||
JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0)
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_INLINE __inline
|
||||
#else
|
||||
#define JSON_HEDLEY_INLINE
|
||||
@ -1510,7 +1572,9 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
(JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,2,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \
|
||||
JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,5,0) || \
|
||||
JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0)
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10) || \
|
||||
JSON_HEDLEY_IAR_VERSION_CHECK(8,10,0)
|
||||
# define JSON_HEDLEY_ALWAYS_INLINE __attribute__((__always_inline__)) JSON_HEDLEY_INLINE
|
||||
#elif \
|
||||
JSON_HEDLEY_MSVC_VERSION_CHECK(12,0,0) || \
|
||||
@ -1552,7 +1616,9 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
(JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,2,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \
|
||||
JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,5,0) || \
|
||||
JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0)
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10) || \
|
||||
JSON_HEDLEY_IAR_VERSION_CHECK(8,10,0)
|
||||
#define JSON_HEDLEY_NEVER_INLINE __attribute__((__noinline__))
|
||||
#elif \
|
||||
JSON_HEDLEY_MSVC_VERSION_CHECK(13,10,0) || \
|
||||
@ -1599,7 +1665,8 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
(JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,2,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \
|
||||
JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,5,0) \
|
||||
) \
|
||||
)
|
||||
) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
# define JSON_HEDLEY_PRIVATE __attribute__((__visibility__("hidden")))
|
||||
# define JSON_HEDLEY_PUBLIC __attribute__((__visibility__("default")))
|
||||
# else
|
||||
@ -1615,7 +1682,8 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
#if \
|
||||
JSON_HEDLEY_HAS_ATTRIBUTE(nothrow) || \
|
||||
JSON_HEDLEY_GCC_VERSION_CHECK(3,3,0) || \
|
||||
JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0)
|
||||
JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_NO_THROW __attribute__((__nothrow__))
|
||||
#elif \
|
||||
JSON_HEDLEY_MSVC_VERSION_CHECK(13,1,0) || \
|
||||
@ -1631,7 +1699,8 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
#endif
|
||||
#if \
|
||||
JSON_HEDLEY_HAS_ATTRIBUTE(fallthrough) || \
|
||||
JSON_HEDLEY_GCC_VERSION_CHECK(7,0,0)
|
||||
JSON_HEDLEY_GCC_VERSION_CHECK(7,0,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_FALL_THROUGH __attribute__((__fallthrough__))
|
||||
#elif JSON_HEDLEY_HAS_CPP_ATTRIBUTE_NS(clang,fallthrough)
|
||||
#define JSON_HEDLEY_FALL_THROUGH JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_([[clang::fallthrough]])
|
||||
@ -1648,7 +1717,8 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
#endif
|
||||
#if \
|
||||
JSON_HEDLEY_HAS_ATTRIBUTE(returns_nonnull) || \
|
||||
JSON_HEDLEY_GCC_VERSION_CHECK(4,9,0)
|
||||
JSON_HEDLEY_GCC_VERSION_CHECK(4,9,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_RETURNS_NON_NULL __attribute__((__returns_nonnull__))
|
||||
#elif defined(_Ret_notnull_) /* SAL */
|
||||
#define JSON_HEDLEY_RETURNS_NON_NULL _Ret_notnull_
|
||||
@ -1690,7 +1760,8 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
JSON_HEDLEY_IBM_VERSION_CHECK(13,1,0) || \
|
||||
JSON_HEDLEY_TI_CL6X_VERSION_CHECK(6,1,0) || \
|
||||
(JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,10,0) && !defined(__cplusplus)) || \
|
||||
JSON_HEDLEY_CRAY_VERSION_CHECK(8,1,0)
|
||||
JSON_HEDLEY_CRAY_VERSION_CHECK(8,1,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_IS_CONSTANT(expr) __builtin_constant_p(expr)
|
||||
#endif
|
||||
#if !defined(__cplusplus)
|
||||
@ -1714,7 +1785,7 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
!defined(JSON_HEDLEY_SUNPRO_VERSION) && \
|
||||
!defined(JSON_HEDLEY_PGI_VERSION) && \
|
||||
!defined(JSON_HEDLEY_IAR_VERSION)) || \
|
||||
JSON_HEDLEY_HAS_EXTENSION(c_generic_selections) || \
|
||||
(JSON_HEDLEY_HAS_EXTENSION(c_generic_selections) && !defined(JSON_HEDLEY_IAR_VERSION)) || \
|
||||
JSON_HEDLEY_GCC_VERSION_CHECK(4,9,0) || \
|
||||
JSON_HEDLEY_INTEL_VERSION_CHECK(17,0,0) || \
|
||||
JSON_HEDLEY_IBM_VERSION_CHECK(12,1,0) || \
|
||||
@ -1891,7 +1962,7 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
#if defined(JSON_HEDLEY_FLAGS)
|
||||
#undef JSON_HEDLEY_FLAGS
|
||||
#endif
|
||||
#if JSON_HEDLEY_HAS_ATTRIBUTE(flag_enum)
|
||||
#if JSON_HEDLEY_HAS_ATTRIBUTE(flag_enum) && (!defined(__cplusplus) || JSON_HEDLEY_HAS_WARNING("-Wbitfield-enum-conversion"))
|
||||
#define JSON_HEDLEY_FLAGS __attribute__((__flag_enum__))
|
||||
#else
|
||||
#define JSON_HEDLEY_FLAGS
|
||||
|
@ -1,5 +1,3 @@
|
||||
#pragma once
|
||||
|
||||
#undef JSON_HEDLEY_ALWAYS_INLINE
|
||||
#undef JSON_HEDLEY_ARM_VERSION
|
||||
#undef JSON_HEDLEY_ARM_VERSION_CHECK
|
||||
@ -33,6 +31,7 @@
|
||||
#undef JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED
|
||||
#undef JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES
|
||||
#undef JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS
|
||||
#undef JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNUSED_FUNCTION
|
||||
#undef JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
#undef JSON_HEDLEY_DIAGNOSTIC_PUSH
|
||||
#undef JSON_HEDLEY_DMC_VERSION
|
||||
@ -84,6 +83,8 @@
|
||||
#undef JSON_HEDLEY_IS_CONSTEXPR_
|
||||
#undef JSON_HEDLEY_LIKELY
|
||||
#undef JSON_HEDLEY_MALLOC
|
||||
#undef JSON_HEDLEY_MCST_LCC_VERSION
|
||||
#undef JSON_HEDLEY_MCST_LCC_VERSION_CHECK
|
||||
#undef JSON_HEDLEY_MESSAGE
|
||||
#undef JSON_HEDLEY_MSVC_VERSION
|
||||
#undef JSON_HEDLEY_MSVC_VERSION_CHECK
|
||||
|
@ -119,11 +119,11 @@ struct position_t
|
||||
* SPDX-License-Identifier: CC0-1.0
|
||||
*/
|
||||
|
||||
#if !defined(JSON_HEDLEY_VERSION) || (JSON_HEDLEY_VERSION < 14)
|
||||
#if !defined(JSON_HEDLEY_VERSION) || (JSON_HEDLEY_VERSION < 15)
|
||||
#if defined(JSON_HEDLEY_VERSION)
|
||||
#undef JSON_HEDLEY_VERSION
|
||||
#endif
|
||||
#define JSON_HEDLEY_VERSION 14
|
||||
#define JSON_HEDLEY_VERSION 15
|
||||
|
||||
#if defined(JSON_HEDLEY_STRINGIFY_EX)
|
||||
#undef JSON_HEDLEY_STRINGIFY_EX
|
||||
@ -490,7 +490,7 @@ struct position_t
|
||||
#if __VER__ > 1000
|
||||
#define JSON_HEDLEY_IAR_VERSION JSON_HEDLEY_VERSION_ENCODE((__VER__ / 1000000), ((__VER__ / 1000) % 1000), (__VER__ % 1000))
|
||||
#else
|
||||
#define JSON_HEDLEY_IAR_VERSION JSON_HEDLEY_VERSION_ENCODE(VER / 100, __VER__ % 100, 0)
|
||||
#define JSON_HEDLEY_IAR_VERSION JSON_HEDLEY_VERSION_ENCODE(__VER__ / 100, __VER__ % 100, 0)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
@ -567,6 +567,22 @@ struct position_t
|
||||
#define JSON_HEDLEY_PELLES_VERSION_CHECK(major,minor,patch) (0)
|
||||
#endif
|
||||
|
||||
#if defined(JSON_HEDLEY_MCST_LCC_VERSION)
|
||||
#undef JSON_HEDLEY_MCST_LCC_VERSION
|
||||
#endif
|
||||
#if defined(__LCC__) && defined(__LCC_MINOR__)
|
||||
#define JSON_HEDLEY_MCST_LCC_VERSION JSON_HEDLEY_VERSION_ENCODE(__LCC__ / 100, __LCC__ % 100, __LCC_MINOR__)
|
||||
#endif
|
||||
|
||||
#if defined(JSON_HEDLEY_MCST_LCC_VERSION_CHECK)
|
||||
#undef JSON_HEDLEY_MCST_LCC_VERSION_CHECK
|
||||
#endif
|
||||
#if defined(JSON_HEDLEY_MCST_LCC_VERSION)
|
||||
#define JSON_HEDLEY_MCST_LCC_VERSION_CHECK(major,minor,patch) (JSON_HEDLEY_MCST_LCC_VERSION >= JSON_HEDLEY_VERSION_ENCODE(major, minor, patch))
|
||||
#else
|
||||
#define JSON_HEDLEY_MCST_LCC_VERSION_CHECK(major,minor,patch) (0)
|
||||
#endif
|
||||
|
||||
#if defined(JSON_HEDLEY_GCC_VERSION)
|
||||
#undef JSON_HEDLEY_GCC_VERSION
|
||||
#endif
|
||||
@ -576,6 +592,7 @@ struct position_t
|
||||
!defined(JSON_HEDLEY_INTEL_VERSION) && \
|
||||
!defined(JSON_HEDLEY_PGI_VERSION) && \
|
||||
!defined(JSON_HEDLEY_ARM_VERSION) && \
|
||||
!defined(JSON_HEDLEY_CRAY_VERSION) && \
|
||||
!defined(JSON_HEDLEY_TI_VERSION) && \
|
||||
!defined(JSON_HEDLEY_TI_ARMCL_VERSION) && \
|
||||
!defined(JSON_HEDLEY_TI_CL430_VERSION) && \
|
||||
@ -583,7 +600,8 @@ struct position_t
|
||||
!defined(JSON_HEDLEY_TI_CL6X_VERSION) && \
|
||||
!defined(JSON_HEDLEY_TI_CL7X_VERSION) && \
|
||||
!defined(JSON_HEDLEY_TI_CLPRU_VERSION) && \
|
||||
!defined(__COMPCERT__)
|
||||
!defined(__COMPCERT__) && \
|
||||
!defined(JSON_HEDLEY_MCST_LCC_VERSION)
|
||||
#define JSON_HEDLEY_GCC_VERSION JSON_HEDLEY_GNUC_VERSION
|
||||
#endif
|
||||
|
||||
@ -599,17 +617,21 @@ struct position_t
|
||||
#if defined(JSON_HEDLEY_HAS_ATTRIBUTE)
|
||||
#undef JSON_HEDLEY_HAS_ATTRIBUTE
|
||||
#endif
|
||||
#if defined(__has_attribute)
|
||||
#define JSON_HEDLEY_HAS_ATTRIBUTE(attribute) __has_attribute(attribute)
|
||||
#if \
|
||||
defined(__has_attribute) && \
|
||||
( \
|
||||
(!defined(JSON_HEDLEY_IAR_VERSION) || JSON_HEDLEY_IAR_VERSION_CHECK(8,5,9)) \
|
||||
)
|
||||
# define JSON_HEDLEY_HAS_ATTRIBUTE(attribute) __has_attribute(attribute)
|
||||
#else
|
||||
#define JSON_HEDLEY_HAS_ATTRIBUTE(attribute) (0)
|
||||
# define JSON_HEDLEY_HAS_ATTRIBUTE(attribute) (0)
|
||||
#endif
|
||||
|
||||
#if defined(JSON_HEDLEY_GNUC_HAS_ATTRIBUTE)
|
||||
#undef JSON_HEDLEY_GNUC_HAS_ATTRIBUTE
|
||||
#endif
|
||||
#if defined(__has_attribute)
|
||||
#define JSON_HEDLEY_GNUC_HAS_ATTRIBUTE(attribute,major,minor,patch) __has_attribute(attribute)
|
||||
#define JSON_HEDLEY_GNUC_HAS_ATTRIBUTE(attribute,major,minor,patch) JSON_HEDLEY_HAS_ATTRIBUTE(attribute)
|
||||
#else
|
||||
#define JSON_HEDLEY_GNUC_HAS_ATTRIBUTE(attribute,major,minor,patch) JSON_HEDLEY_GNUC_VERSION_CHECK(major,minor,patch)
|
||||
#endif
|
||||
@ -618,7 +640,7 @@ struct position_t
|
||||
#undef JSON_HEDLEY_GCC_HAS_ATTRIBUTE
|
||||
#endif
|
||||
#if defined(__has_attribute)
|
||||
#define JSON_HEDLEY_GCC_HAS_ATTRIBUTE(attribute,major,minor,patch) __has_attribute(attribute)
|
||||
#define JSON_HEDLEY_GCC_HAS_ATTRIBUTE(attribute,major,minor,patch) JSON_HEDLEY_HAS_ATTRIBUTE(attribute)
|
||||
#else
|
||||
#define JSON_HEDLEY_GCC_HAS_ATTRIBUTE(attribute,major,minor,patch) JSON_HEDLEY_GCC_VERSION_CHECK(major,minor,patch)
|
||||
#endif
|
||||
@ -982,6 +1004,8 @@ struct position_t
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"")
|
||||
#elif JSON_HEDLEY_MSVC_VERSION_CHECK(15,0,0)
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED __pragma(warning(disable:4996))
|
||||
#elif JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED _Pragma("diag_suppress 1215,1444")
|
||||
#elif \
|
||||
JSON_HEDLEY_TI_VERSION_CHECK(15,12,0) || \
|
||||
(JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(4,8,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \
|
||||
@ -1032,6 +1056,8 @@ struct position_t
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS _Pragma("diag_suppress 163")
|
||||
#elif JSON_HEDLEY_IAR_VERSION_CHECK(8,0,0)
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS _Pragma("diag_suppress=Pe161")
|
||||
#elif JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS _Pragma("diag_suppress 161")
|
||||
#else
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS
|
||||
#endif
|
||||
@ -1062,6 +1088,8 @@ struct position_t
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES _Pragma("diag_suppress 1173")
|
||||
#elif JSON_HEDLEY_IAR_VERSION_CHECK(8,0,0)
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES _Pragma("diag_suppress=Pe1097")
|
||||
#elif JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES _Pragma("diag_suppress 1097")
|
||||
#else
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES
|
||||
#endif
|
||||
@ -1079,6 +1107,21 @@ struct position_t
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_CAST_QUAL
|
||||
#endif
|
||||
|
||||
#if defined(JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNUSED_FUNCTION)
|
||||
#undef JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNUSED_FUNCTION
|
||||
#endif
|
||||
#if JSON_HEDLEY_HAS_WARNING("-Wunused-function")
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNUSED_FUNCTION _Pragma("clang diagnostic ignored \"-Wunused-function\"")
|
||||
#elif JSON_HEDLEY_GCC_VERSION_CHECK(3,4,0)
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNUSED_FUNCTION _Pragma("GCC diagnostic ignored \"-Wunused-function\"")
|
||||
#elif JSON_HEDLEY_MSVC_VERSION_CHECK(1,0,0)
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNUSED_FUNCTION __pragma(warning(disable:4505))
|
||||
#elif JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNUSED_FUNCTION _Pragma("diag_suppress 3142")
|
||||
#else
|
||||
#define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNUSED_FUNCTION
|
||||
#endif
|
||||
|
||||
#if defined(JSON_HEDLEY_DEPRECATED)
|
||||
#undef JSON_HEDLEY_DEPRECATED
|
||||
#endif
|
||||
@ -1091,7 +1134,7 @@ struct position_t
|
||||
#define JSON_HEDLEY_DEPRECATED(since) __declspec(deprecated("Since " # since))
|
||||
#define JSON_HEDLEY_DEPRECATED_FOR(since, replacement) __declspec(deprecated("Since " #since "; use " #replacement))
|
||||
#elif \
|
||||
JSON_HEDLEY_HAS_EXTENSION(attribute_deprecated_with_message) || \
|
||||
(JSON_HEDLEY_HAS_EXTENSION(attribute_deprecated_with_message) && !defined(JSON_HEDLEY_IAR_VERSION)) || \
|
||||
JSON_HEDLEY_GCC_VERSION_CHECK(4,5,0) || \
|
||||
JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \
|
||||
JSON_HEDLEY_ARM_VERSION_CHECK(5,6,0) || \
|
||||
@ -1101,7 +1144,8 @@ struct position_t
|
||||
JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(18,1,0) || \
|
||||
JSON_HEDLEY_TI_CL6X_VERSION_CHECK(8,3,0) || \
|
||||
JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,3,0)
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,3,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_DEPRECATED(since) __attribute__((__deprecated__("Since " #since)))
|
||||
#define JSON_HEDLEY_DEPRECATED_FOR(since, replacement) __attribute__((__deprecated__("Since " #since "; use " #replacement)))
|
||||
#elif defined(__cplusplus) && (__cplusplus >= 201402L)
|
||||
@ -1121,7 +1165,9 @@ struct position_t
|
||||
(JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,2,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \
|
||||
JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,5,0) || \
|
||||
JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0)
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10) || \
|
||||
JSON_HEDLEY_IAR_VERSION_CHECK(8,10,0)
|
||||
#define JSON_HEDLEY_DEPRECATED(since) __attribute__((__deprecated__))
|
||||
#define JSON_HEDLEY_DEPRECATED_FOR(since, replacement) __attribute__((__deprecated__))
|
||||
#elif \
|
||||
@ -1144,7 +1190,8 @@ struct position_t
|
||||
#if \
|
||||
JSON_HEDLEY_HAS_ATTRIBUTE(warning) || \
|
||||
JSON_HEDLEY_GCC_VERSION_CHECK(4,3,0) || \
|
||||
JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0)
|
||||
JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_UNAVAILABLE(available_since) __attribute__((__warning__("Not available until " #available_since)))
|
||||
#else
|
||||
#define JSON_HEDLEY_UNAVAILABLE(available_since)
|
||||
@ -1172,7 +1219,8 @@ struct position_t
|
||||
JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \
|
||||
(JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,15,0) && defined(__cplusplus)) || \
|
||||
JSON_HEDLEY_PGI_VERSION_CHECK(17,10,0)
|
||||
JSON_HEDLEY_PGI_VERSION_CHECK(17,10,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_WARN_UNUSED_RESULT __attribute__((__warn_unused_result__))
|
||||
#define JSON_HEDLEY_WARN_UNUSED_RESULT_MSG(msg) __attribute__((__warn_unused_result__))
|
||||
#elif (JSON_HEDLEY_HAS_CPP_ATTRIBUTE(nodiscard) >= 201907L)
|
||||
@ -1196,7 +1244,8 @@ struct position_t
|
||||
JSON_HEDLEY_HAS_ATTRIBUTE(sentinel) || \
|
||||
JSON_HEDLEY_GCC_VERSION_CHECK(4,0,0) || \
|
||||
JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \
|
||||
JSON_HEDLEY_ARM_VERSION_CHECK(5,4,0)
|
||||
JSON_HEDLEY_ARM_VERSION_CHECK(5,4,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_SENTINEL(position) __attribute__((__sentinel__(position)))
|
||||
#else
|
||||
#define JSON_HEDLEY_SENTINEL(position)
|
||||
@ -1207,7 +1256,9 @@ struct position_t
|
||||
#endif
|
||||
#if JSON_HEDLEY_IAR_VERSION_CHECK(8,0,0)
|
||||
#define JSON_HEDLEY_NO_RETURN __noreturn
|
||||
#elif JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0)
|
||||
#elif \
|
||||
JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_NO_RETURN __attribute__((__noreturn__))
|
||||
#elif defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L
|
||||
#define JSON_HEDLEY_NO_RETURN _Noreturn
|
||||
@ -1229,7 +1280,8 @@ struct position_t
|
||||
(JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,2,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \
|
||||
JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,5,0) || \
|
||||
JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0)
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \
|
||||
JSON_HEDLEY_IAR_VERSION_CHECK(8,10,0)
|
||||
#define JSON_HEDLEY_NO_RETURN __attribute__((__noreturn__))
|
||||
#elif JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,10,0)
|
||||
#define JSON_HEDLEY_NO_RETURN _Pragma("does_not_return")
|
||||
@ -1286,7 +1338,9 @@ struct position_t
|
||||
JSON_HEDLEY_GCC_VERSION_CHECK(4,5,0) || \
|
||||
JSON_HEDLEY_PGI_VERSION_CHECK(18,10,0) || \
|
||||
JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \
|
||||
JSON_HEDLEY_IBM_VERSION_CHECK(13,1,5)
|
||||
JSON_HEDLEY_IBM_VERSION_CHECK(13,1,5) || \
|
||||
JSON_HEDLEY_CRAY_VERSION_CHECK(10,0,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_UNREACHABLE() __builtin_unreachable()
|
||||
#elif defined(JSON_HEDLEY_ASSUME)
|
||||
#define JSON_HEDLEY_UNREACHABLE() JSON_HEDLEY_ASSUME(0)
|
||||
@ -1364,7 +1418,8 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
(JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,2,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \
|
||||
JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,5,0) || \
|
||||
JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0)
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_PRINTF_FORMAT(string_idx,first_to_check) __attribute__((__format__(__printf__, string_idx, first_to_check)))
|
||||
#elif JSON_HEDLEY_PELLES_VERSION_CHECK(6,0,0)
|
||||
#define JSON_HEDLEY_PRINTF_FORMAT(string_idx,first_to_check) __declspec(vaformat(printf,string_idx,first_to_check))
|
||||
@ -1401,7 +1456,8 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
#endif
|
||||
#if \
|
||||
(JSON_HEDLEY_HAS_BUILTIN(__builtin_expect_with_probability) && !defined(JSON_HEDLEY_PGI_VERSION)) || \
|
||||
JSON_HEDLEY_GCC_VERSION_CHECK(9,0,0)
|
||||
JSON_HEDLEY_GCC_VERSION_CHECK(9,0,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
# define JSON_HEDLEY_PREDICT(expr, value, probability) __builtin_expect_with_probability( (expr), (value), (probability))
|
||||
# define JSON_HEDLEY_PREDICT_TRUE(expr, probability) __builtin_expect_with_probability(!!(expr), 1 , (probability))
|
||||
# define JSON_HEDLEY_PREDICT_FALSE(expr, probability) __builtin_expect_with_probability(!!(expr), 0 , (probability))
|
||||
@ -1422,7 +1478,8 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \
|
||||
JSON_HEDLEY_TINYC_VERSION_CHECK(0,9,27) || \
|
||||
JSON_HEDLEY_CRAY_VERSION_CHECK(8,1,0)
|
||||
JSON_HEDLEY_CRAY_VERSION_CHECK(8,1,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
# define JSON_HEDLEY_PREDICT(expr, expected, probability) \
|
||||
(((probability) >= 0.9) ? __builtin_expect((expr), (expected)) : (JSON_HEDLEY_STATIC_CAST(void, expected), (expr)))
|
||||
# define JSON_HEDLEY_PREDICT_TRUE(expr, probability) \
|
||||
@ -1468,7 +1525,8 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
(JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,2,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \
|
||||
JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,5,0) || \
|
||||
JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0)
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_MALLOC __attribute__((__malloc__))
|
||||
#elif JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,10,0)
|
||||
#define JSON_HEDLEY_MALLOC _Pragma("returns_new_memory")
|
||||
@ -1501,7 +1559,8 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,5,0) || \
|
||||
JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \
|
||||
JSON_HEDLEY_PGI_VERSION_CHECK(17,10,0)
|
||||
JSON_HEDLEY_PGI_VERSION_CHECK(17,10,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
# define JSON_HEDLEY_PURE __attribute__((__pure__))
|
||||
#elif JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,10,0)
|
||||
# define JSON_HEDLEY_PURE _Pragma("does_not_write_global_data")
|
||||
@ -1537,7 +1596,8 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,5,0) || \
|
||||
JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \
|
||||
JSON_HEDLEY_PGI_VERSION_CHECK(17,10,0)
|
||||
JSON_HEDLEY_PGI_VERSION_CHECK(17,10,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_CONST __attribute__((__const__))
|
||||
#elif \
|
||||
JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,10,0)
|
||||
@ -1565,7 +1625,8 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \
|
||||
(JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,14,0) && defined(__cplusplus)) || \
|
||||
JSON_HEDLEY_IAR_VERSION_CHECK(8,0,0) || \
|
||||
defined(__clang__)
|
||||
defined(__clang__) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_RESTRICT __restrict
|
||||
#elif JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,3,0) && !defined(__cplusplus)
|
||||
#define JSON_HEDLEY_RESTRICT _Restrict
|
||||
@ -1593,7 +1654,8 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
JSON_HEDLEY_TI_CL2000_VERSION_CHECK(6,2,0) || \
|
||||
JSON_HEDLEY_TI_CL6X_VERSION_CHECK(8,0,0) || \
|
||||
JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0)
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_INLINE __inline
|
||||
#else
|
||||
#define JSON_HEDLEY_INLINE
|
||||
@ -1619,7 +1681,9 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
(JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,2,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \
|
||||
JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,5,0) || \
|
||||
JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0)
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10) || \
|
||||
JSON_HEDLEY_IAR_VERSION_CHECK(8,10,0)
|
||||
# define JSON_HEDLEY_ALWAYS_INLINE __attribute__((__always_inline__)) JSON_HEDLEY_INLINE
|
||||
#elif \
|
||||
JSON_HEDLEY_MSVC_VERSION_CHECK(12,0,0) || \
|
||||
@ -1661,7 +1725,9 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
(JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,2,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \
|
||||
JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,5,0) || \
|
||||
JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0)
|
||||
JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10) || \
|
||||
JSON_HEDLEY_IAR_VERSION_CHECK(8,10,0)
|
||||
#define JSON_HEDLEY_NEVER_INLINE __attribute__((__noinline__))
|
||||
#elif \
|
||||
JSON_HEDLEY_MSVC_VERSION_CHECK(13,10,0) || \
|
||||
@ -1708,7 +1774,8 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
(JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,2,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \
|
||||
JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,5,0) \
|
||||
) \
|
||||
)
|
||||
) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
# define JSON_HEDLEY_PRIVATE __attribute__((__visibility__("hidden")))
|
||||
# define JSON_HEDLEY_PUBLIC __attribute__((__visibility__("default")))
|
||||
# else
|
||||
@ -1724,7 +1791,8 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
#if \
|
||||
JSON_HEDLEY_HAS_ATTRIBUTE(nothrow) || \
|
||||
JSON_HEDLEY_GCC_VERSION_CHECK(3,3,0) || \
|
||||
JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0)
|
||||
JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_NO_THROW __attribute__((__nothrow__))
|
||||
#elif \
|
||||
JSON_HEDLEY_MSVC_VERSION_CHECK(13,1,0) || \
|
||||
@ -1740,7 +1808,8 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
#endif
|
||||
#if \
|
||||
JSON_HEDLEY_HAS_ATTRIBUTE(fallthrough) || \
|
||||
JSON_HEDLEY_GCC_VERSION_CHECK(7,0,0)
|
||||
JSON_HEDLEY_GCC_VERSION_CHECK(7,0,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_FALL_THROUGH __attribute__((__fallthrough__))
|
||||
#elif JSON_HEDLEY_HAS_CPP_ATTRIBUTE_NS(clang,fallthrough)
|
||||
#define JSON_HEDLEY_FALL_THROUGH JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_([[clang::fallthrough]])
|
||||
@ -1757,7 +1826,8 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
#endif
|
||||
#if \
|
||||
JSON_HEDLEY_HAS_ATTRIBUTE(returns_nonnull) || \
|
||||
JSON_HEDLEY_GCC_VERSION_CHECK(4,9,0)
|
||||
JSON_HEDLEY_GCC_VERSION_CHECK(4,9,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_RETURNS_NON_NULL __attribute__((__returns_nonnull__))
|
||||
#elif defined(_Ret_notnull_) /* SAL */
|
||||
#define JSON_HEDLEY_RETURNS_NON_NULL _Ret_notnull_
|
||||
@ -1799,7 +1869,8 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
JSON_HEDLEY_IBM_VERSION_CHECK(13,1,0) || \
|
||||
JSON_HEDLEY_TI_CL6X_VERSION_CHECK(6,1,0) || \
|
||||
(JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,10,0) && !defined(__cplusplus)) || \
|
||||
JSON_HEDLEY_CRAY_VERSION_CHECK(8,1,0)
|
||||
JSON_HEDLEY_CRAY_VERSION_CHECK(8,1,0) || \
|
||||
JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10)
|
||||
#define JSON_HEDLEY_IS_CONSTANT(expr) __builtin_constant_p(expr)
|
||||
#endif
|
||||
#if !defined(__cplusplus)
|
||||
@ -1823,7 +1894,7 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
!defined(JSON_HEDLEY_SUNPRO_VERSION) && \
|
||||
!defined(JSON_HEDLEY_PGI_VERSION) && \
|
||||
!defined(JSON_HEDLEY_IAR_VERSION)) || \
|
||||
JSON_HEDLEY_HAS_EXTENSION(c_generic_selections) || \
|
||||
(JSON_HEDLEY_HAS_EXTENSION(c_generic_selections) && !defined(JSON_HEDLEY_IAR_VERSION)) || \
|
||||
JSON_HEDLEY_GCC_VERSION_CHECK(4,9,0) || \
|
||||
JSON_HEDLEY_INTEL_VERSION_CHECK(17,0,0) || \
|
||||
JSON_HEDLEY_IBM_VERSION_CHECK(12,1,0) || \
|
||||
@ -2000,7 +2071,7 @@ JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
#if defined(JSON_HEDLEY_FLAGS)
|
||||
#undef JSON_HEDLEY_FLAGS
|
||||
#endif
|
||||
#if JSON_HEDLEY_HAS_ATTRIBUTE(flag_enum)
|
||||
#if JSON_HEDLEY_HAS_ATTRIBUTE(flag_enum) && (!defined(__cplusplus) || JSON_HEDLEY_HAS_WARNING("-Wbitfield-enum-conversion"))
|
||||
#define JSON_HEDLEY_FLAGS __attribute__((__flag_enum__))
|
||||
#else
|
||||
#define JSON_HEDLEY_FLAGS
|
||||
@ -25440,8 +25511,6 @@ inline nlohmann::json::json_pointer operator "" _json_pointer(const char* s, std
|
||||
#undef JSON_EXPLICIT
|
||||
|
||||
// #include <nlohmann/thirdparty/hedley/hedley_undef.hpp>
|
||||
|
||||
|
||||
#undef JSON_HEDLEY_ALWAYS_INLINE
|
||||
#undef JSON_HEDLEY_ARM_VERSION
|
||||
#undef JSON_HEDLEY_ARM_VERSION_CHECK
|
||||
@ -25475,6 +25544,7 @@ inline nlohmann::json::json_pointer operator "" _json_pointer(const char* s, std
|
||||
#undef JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED
|
||||
#undef JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES
|
||||
#undef JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS
|
||||
#undef JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNUSED_FUNCTION
|
||||
#undef JSON_HEDLEY_DIAGNOSTIC_POP
|
||||
#undef JSON_HEDLEY_DIAGNOSTIC_PUSH
|
||||
#undef JSON_HEDLEY_DMC_VERSION
|
||||
@ -25526,6 +25596,8 @@ inline nlohmann::json::json_pointer operator "" _json_pointer(const char* s, std
|
||||
#undef JSON_HEDLEY_IS_CONSTEXPR_
|
||||
#undef JSON_HEDLEY_LIKELY
|
||||
#undef JSON_HEDLEY_MALLOC
|
||||
#undef JSON_HEDLEY_MCST_LCC_VERSION
|
||||
#undef JSON_HEDLEY_MCST_LCC_VERSION_CHECK
|
||||
#undef JSON_HEDLEY_MESSAGE
|
||||
#undef JSON_HEDLEY_MSVC_VERSION
|
||||
#undef JSON_HEDLEY_MSVC_VERSION_CHECK
|
||||
|
Loading…
Reference in New Issue
Block a user