diff options
author | thegeorg <thegeorg@yandex-team.com> | 2022-12-30 20:31:29 +0300 |
---|---|---|
committer | thegeorg <thegeorg@yandex-team.com> | 2022-12-30 20:31:29 +0300 |
commit | 6496d56c54f848c2fe3163603be2cf0ef9c25853 (patch) | |
tree | b0dedfa9232c56c0fb78644b619aa761102210bd | |
parent | 8ccb5bf0bb2504c91ad075eef5f80f399dafa41f (diff) | |
download | ydb-6496d56c54f848c2fe3163603be2cf0ef9c25853.tar.gz |
Update contrib/restricted/boost/config to 1.81.0
10 files changed, 94 insertions, 13 deletions
diff --git a/contrib/restricted/boost/config/include/boost/config/compiler/clang.hpp b/contrib/restricted/boost/config/include/boost/config/compiler/clang.hpp index 11eecce09b..90b21b1d47 100644 --- a/contrib/restricted/boost/config/include/boost/config/compiler/clang.hpp +++ b/contrib/restricted/boost/config/include/boost/config/compiler/clang.hpp @@ -331,11 +331,18 @@ // All versions with __cplusplus above this value seem to support this: # define BOOST_NO_CXX14_DIGIT_SEPARATORS #endif -// -// __builtin_unreachable: -#if defined(__has_builtin) && __has_builtin(__builtin_unreachable) + +// Unreachable code markup +#if defined(__has_builtin) +#if __has_builtin(__builtin_unreachable) #define BOOST_UNREACHABLE_RETURN(x) __builtin_unreachable(); #endif +#endif + +// Deprecated symbol markup +#if __has_attribute(deprecated) +#define BOOST_DEPRECATED(msg) __attribute__((deprecated(msg))) +#endif #if (__clang_major__ == 3) && (__clang_minor__ == 0) // Apparently a clang bug: diff --git a/contrib/restricted/boost/config/include/boost/config/compiler/clang_version.hpp b/contrib/restricted/boost/config/include/boost/config/compiler/clang_version.hpp index 9e5b408ae0..70c5507c43 100644 --- a/contrib/restricted/boost/config/include/boost/config/compiler/clang_version.hpp +++ b/contrib/restricted/boost/config/include/boost/config/compiler/clang_version.hpp @@ -4,14 +4,20 @@ #if !defined(__APPLE__) -# define BOOST_CLANG_VERSION (__clang_major__ * 10000 + __clang_minor__ * 100 + __clang_patchlevel__) +# define BOOST_CLANG_VERSION (__clang_major__ * 10000 + __clang_minor__ * 100 + __clang_patchlevel__ % 100) #else -# define BOOST_CLANG_REPORTED_VERSION (__clang_major__ * 10000 + __clang_minor__ * 100 + __clang_patchlevel__) +# define BOOST_CLANG_REPORTED_VERSION (__clang_major__ * 10000 + __clang_minor__ * 100 + __clang_patchlevel__ % 100) // https://en.wikipedia.org/wiki/Xcode#Toolchain_versions -# if BOOST_CLANG_REPORTED_VERSION >= 130000 +# if BOOST_CLANG_REPORTED_VERSION >= 140000 +# define BOOST_CLANG_VERSION 140000 + +# elif BOOST_CLANG_REPORTED_VERSION >= 130100 +# define BOOST_CLANG_VERSION 130000 + +# elif BOOST_CLANG_REPORTED_VERSION >= 130000 # define BOOST_CLANG_VERSION 120000 # elif BOOST_CLANG_REPORTED_VERSION >= 120005 diff --git a/contrib/restricted/boost/config/include/boost/config/compiler/gcc.hpp b/contrib/restricted/boost/config/include/boost/config/compiler/gcc.hpp index d4cf0e9c88..4cea0ce26b 100644 --- a/contrib/restricted/boost/config/include/boost/config/compiler/gcc.hpp +++ b/contrib/restricted/boost/config/include/boost/config/compiler/gcc.hpp @@ -340,12 +340,18 @@ // Type aliasing hint. Supported since gcc 3.3. #define BOOST_MAY_ALIAS __attribute__((__may_alias__)) -// -// __builtin_unreachable: +// Unreachable code markup #if BOOST_GCC_VERSION >= 40500 #define BOOST_UNREACHABLE_RETURN(x) __builtin_unreachable(); #endif +// Deprecated symbol markup +#if BOOST_GCC_VERSION >= 40500 +#define BOOST_DEPRECATED(msg) __attribute__((deprecated(msg))) +#else +#define BOOST_DEPRECATED(msg) __attribute__((deprecated)) +#endif + #ifndef BOOST_COMPILER # define BOOST_COMPILER "GNU C++ version " __VERSION__ #endif @@ -359,7 +365,7 @@ // versions check: // we don't know gcc prior to version 3.30: -#if (BOOST_GCC_VERSION< 30300) +#if (BOOST_GCC_VERSION < 30300) # error "Compiler not configured - please reconfigure" #endif // diff --git a/contrib/restricted/boost/config/include/boost/config/compiler/sunpro_cc.hpp b/contrib/restricted/boost/config/include/boost/config/compiler/sunpro_cc.hpp index c674e8ab58..1ab789912c 100644 --- a/contrib/restricted/boost/config/include/boost/config/compiler/sunpro_cc.hpp +++ b/contrib/restricted/boost/config/include/boost/config/compiler/sunpro_cc.hpp @@ -86,6 +86,12 @@ # define BOOST_SYMBOL_VISIBLE __global #endif +// Deprecated symbol markup +// Oracle Studio 12.4 supports deprecated attribute with a message; this is the first release that supports the attribute. +#if (__SUNPRO_CC >= 0x5130) +#define BOOST_DEPRECATED(msg) __attribute__((deprecated(msg))) +#endif + #if (__SUNPRO_CC < 0x5130) // C++03 features in 12.4: #define BOOST_NO_TWO_PHASE_NAME_LOOKUP diff --git a/contrib/restricted/boost/config/include/boost/config/compiler/visualc.hpp b/contrib/restricted/boost/config/include/boost/config/compiler/visualc.hpp index 4859c7c812..6378094c0c 100644 --- a/contrib/restricted/boost/config/include/boost/config/compiler/visualc.hpp +++ b/contrib/restricted/boost/config/include/boost/config/compiler/visualc.hpp @@ -107,6 +107,14 @@ # define BOOST_NO_RTTI #endif +// Deprecated symbol markup +#if (_MSC_VER >= 1400) +#define BOOST_DEPRECATED(msg) __declspec(deprecated(msg)) +#else +// MSVC 7.1 only supports the attribute without a message +#define BOOST_DEPRECATED(msg) __declspec(deprecated) +#endif + // // TR1 features: // diff --git a/contrib/restricted/boost/config/include/boost/config/compiler/xlcpp.hpp b/contrib/restricted/boost/config/include/boost/config/compiler/xlcpp.hpp index 6e86881714..f002e69c91 100644 --- a/contrib/restricted/boost/config/include/boost/config/compiler/xlcpp.hpp +++ b/contrib/restricted/boost/config/include/boost/config/compiler/xlcpp.hpp @@ -270,6 +270,10 @@ # define BOOST_NO_CXX14_DIGIT_SEPARATORS #endif +// Deprecated symbol markup +#if __has_attribute(deprecated) +#define BOOST_DEPRECATED(msg) __attribute__((deprecated(msg))) +#endif // Unused attribute: #if defined(__GNUC__) && (__GNUC__ >= 4) diff --git a/contrib/restricted/boost/config/include/boost/config/detail/suffix.hpp b/contrib/restricted/boost/config/include/boost/config/detail/suffix.hpp index 13d4bb6a68..898c7ac473 100644 --- a/contrib/restricted/boost/config/include/boost/config/detail/suffix.hpp +++ b/contrib/restricted/boost/config/include/boost/config/detail/suffix.hpp @@ -48,6 +48,22 @@ #endif // +// disable explicitly enforced visibility +// +#if defined(BOOST_DISABLE_EXPLICIT_SYMBOL_VISIBILITY) + +#undef BOOST_SYMBOL_EXPORT +#define BOOST_SYMBOL_EXPORT + +#undef BOOST_SYMBOL_IMPORT +#define BOOST_SYMBOL_IMPORT + +#undef BOOST_SYMBOL_VISIBLE +#define BOOST_SYMBOL_VISIBLE + +#endif + +// // look for long long by looking for the appropriate macros in <limits.h>. // Note that we use limits.h rather than climits for maximal portability, // remember that since these just declare a bunch of macros, there should be @@ -668,6 +684,23 @@ namespace std{ using ::type_info; } # define BOOST_NORETURN #endif +// BOOST_DEPRECATED -------------------------------------------// +// The macro can be used to mark deprecated symbols, such as functions, objects and types. +// Any code that uses these symbols will produce warnings, possibly with a message specified +// as an argument. The warnings can be suppressed by defining BOOST_ALLOW_DEPRECATED_SYMBOLS +// or BOOST_ALLOW_DEPRECATED. +#if !defined(BOOST_DEPRECATED) && __cplusplus >= 201402 +#define BOOST_DEPRECATED(msg) [[deprecated(msg)]] +#endif + +#if defined(BOOST_ALLOW_DEPRECATED_SYMBOLS) || defined(BOOST_ALLOW_DEPRECATED) +#undef BOOST_DEPRECATED +#endif + +#if !defined(BOOST_DEPRECATED) +#define BOOST_DEPRECATED(msg) +#endif + // Branch prediction hints // These macros are intended to wrap conditional expressions that yield true or false // diff --git a/contrib/restricted/boost/config/include/boost/config/stdlib/libcpp.hpp b/contrib/restricted/boost/config/include/boost/config/stdlib/libcpp.hpp index bc8536eadd..0e9f2445ed 100644 --- a/contrib/restricted/boost/config/include/boost/config/stdlib/libcpp.hpp +++ b/contrib/restricted/boost/config/include/boost/config/stdlib/libcpp.hpp @@ -168,4 +168,13 @@ # define BOOST_NO_CXX14_HDR_SHARED_MUTEX #endif +#if _LIBCPP_VERSION >= 15000 +// +// Unary function is now deprecated in C++11 and later: +// +#if __cplusplus >= 201103L +#define BOOST_NO_CXX98_FUNCTION_BASE +#endif +#endif + // --- end --- diff --git a/contrib/restricted/boost/config/include/boost/config/stdlib/libstdcpp3.hpp b/contrib/restricted/boost/config/include/boost/config/stdlib/libstdcpp3.hpp index 2219883606..85ad1a6bde 100644 --- a/contrib/restricted/boost/config/include/boost/config/stdlib/libstdcpp3.hpp +++ b/contrib/restricted/boost/config/include/boost/config/stdlib/libstdcpp3.hpp @@ -139,7 +139,9 @@ // #ifdef __clang__ -#if __has_include(<source_location>) +#if __has_include(<expected>) +# define BOOST_LIBSTDCXX_VERSION 120100 +#elif __has_include(<source_location>) # define BOOST_LIBSTDCXX_VERSION 110100 #elif __has_include(<compare>) # define BOOST_LIBSTDCXX_VERSION 100100 @@ -457,7 +459,7 @@ extern "C" char *gets (char *__s); # endif #endif -#if (!defined(_GTHREAD_USE_MUTEX_TIMEDLOCK) || (_GTHREAD_USE_MUTEX_TIMEDLOCK == 0)) && !defined(BOOST_NO_CXX11_HDR_MUTEX) +#if (!defined(_GTHREAD_USE_MUTEX_TIMEDLOCK) || (_GTHREAD_USE_MUTEX_TIMEDLOCK == 0)) && !defined(BOOST_NO_CXX11_HDR_MUTEX) && (__GNUC__ < 6) // Timed mutexes are not always available: # define BOOST_NO_CXX11_HDR_MUTEX #endif diff --git a/contrib/restricted/boost/config/include/boost/version.hpp b/contrib/restricted/boost/config/include/boost/version.hpp index 0378a2caa8..63ed52e5ab 100644 --- a/contrib/restricted/boost/config/include/boost/version.hpp +++ b/contrib/restricted/boost/config/include/boost/version.hpp @@ -19,7 +19,7 @@ // BOOST_VERSION / 100 % 1000 is the minor version // BOOST_VERSION / 100000 is the major version -#define BOOST_VERSION 108000 +#define BOOST_VERSION 108100 // // BOOST_LIB_VERSION must be defined to be the same as BOOST_VERSION @@ -27,6 +27,6 @@ // number, y is the minor version number, and z is the patch level if not 0. // This is used by <config/auto_link.hpp> to select which library version to link to. -#define BOOST_LIB_VERSION "1_80" +#define BOOST_LIB_VERSION "1_81" #endif |