diff options
author | robot-contrib <[email protected]> | 2025-08-26 11:39:23 +0300 |
---|---|---|
committer | robot-contrib <[email protected]> | 2025-08-26 11:56:45 +0300 |
commit | 949e2bccdbf17c2ecd3f7c98e3d515d838bed73e (patch) | |
tree | 5ac7e9505fb170810031225a1cb5e80906538aa6 | |
parent | 21828276f4ef70ddf8b4be4dfd123b626ffe0f71 (diff) |
Update contrib/restricted/boost/mp11 to 1.89.0
commit_hash:141b0d484de66363361efbfbc5707958f756e039
4 files changed, 39 insertions, 5 deletions
diff --git a/contrib/restricted/boost/mp11/.yandex_meta/default.nix b/contrib/restricted/boost/mp11/.yandex_meta/default.nix index 7f1d8910516..8eb065ca508 100644 --- a/contrib/restricted/boost/mp11/.yandex_meta/default.nix +++ b/contrib/restricted/boost/mp11/.yandex_meta/default.nix @@ -1,13 +1,13 @@ self: super: with self; { boost_mp11 = stdenv.mkDerivation rec { pname = "boost_mp11"; - version = "1.88.0"; + version = "1.89.0"; src = fetchFromGitHub { owner = "boostorg"; repo = "mp11"; rev = "boost-${version}"; - hash = "sha256-XtjcSv+pEfPCuOghx1EBum6n2IZMWEMBMk/hY38/Nto="; + hash = "sha256-HcQJ/PXBQdWVjGZy28X2LxVRfjV2nkeLTusNjT9ssXI="; }; }; } diff --git a/contrib/restricted/boost/mp11/include/boost/mp11/detail/mp_map_find.hpp b/contrib/restricted/boost/mp11/include/boost/mp11/detail/mp_map_find.hpp index 2fb70d8e905..035538ae024 100644 --- a/contrib/restricted/boost/mp11/include/boost/mp11/detail/mp_map_find.hpp +++ b/contrib/restricted/boost/mp11/include/boost/mp11/detail/mp_map_find.hpp @@ -11,6 +11,14 @@ #include <boost/mp11/utility.hpp> #include <boost/mp11/detail/config.hpp> +#if BOOST_MP11_WORKAROUND( BOOST_MP11_GCC, >= 140000 ) + +#include <boost/mp11/detail/mp_list.hpp> +#include <boost/mp11/detail/mp_append.hpp> +#include <boost/mp11/detail/mp_front.hpp> + +#endif + #if BOOST_MP11_WORKAROUND( BOOST_MP11_MSVC, < 1930 ) // not exactly good practice, but... @@ -26,6 +34,30 @@ namespace boost namespace mp11 { +#if BOOST_MP11_WORKAROUND( BOOST_MP11_GCC, >= 140000 ) + +// https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120161 + +namespace detail +{ + +template<class M, class K> struct mp_map_find_impl; + +template<template<class...> class M, class... T, class K> struct mp_map_find_impl<M<T...>, K> +{ + template<class U> using _f = mp_if<std::is_same<mp_front<U>, K>, mp_list<U>, mp_list<>>; + + using _l = mp_append<_f<T>..., mp_list<void>>; + + using type = mp_front<_l>; +}; + +} // namespace detail + +template<class M, class K> using mp_map_find = typename detail::mp_map_find_impl<M, K>::type; + +#else + // mp_map_find namespace detail { @@ -81,6 +113,8 @@ template<template<class...> class M, class... T, class K> struct mp_map_find_imp template<class M, class K> using mp_map_find = typename detail::mp_map_find_impl<M, K>::type; +#endif + } // namespace mp11 } // namespace boost diff --git a/contrib/restricted/boost/mp11/include/boost/mp11/version.hpp b/contrib/restricted/boost/mp11/include/boost/mp11/version.hpp index 4c00cbd378c..ac240fa73b0 100644 --- a/contrib/restricted/boost/mp11/include/boost/mp11/version.hpp +++ b/contrib/restricted/boost/mp11/include/boost/mp11/version.hpp @@ -11,6 +11,6 @@ // Same format as BOOST_VERSION: // major * 100000 + minor * 100 + patch -#define BOOST_MP11_VERSION 108800 +#define BOOST_MP11_VERSION 108900 #endif // #ifndef BOOST_MP11_VERSION_HPP_INCLUDED diff --git a/contrib/restricted/boost/mp11/ya.make b/contrib/restricted/boost/mp11/ya.make index 8b85621553d..874542c302e 100644 --- a/contrib/restricted/boost/mp11/ya.make +++ b/contrib/restricted/boost/mp11/ya.make @@ -6,9 +6,9 @@ LICENSE(BSL-1.0) LICENSE_TEXTS(.yandex_meta/licenses.list.txt) -VERSION(1.88.0) +VERSION(1.89.0) -ORIGINAL_SOURCE(https://github.com/boostorg/mp11/archive/boost-1.88.0.tar.gz) +ORIGINAL_SOURCE(https://github.com/boostorg/mp11/archive/boost-1.89.0.tar.gz) ADDINCL( GLOBAL contrib/restricted/boost/mp11/include |