From 72a6b1e00e8560611a0ee323037101db24db9635 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ion=20Gazta=C3=B1aga?= Date: Mon, 9 Sep 2024 10:54:14 +0200 Subject: [PATCH] Fixes #288 ("Compile error when using flat_map::extract_sequence with small_vector") --- .../detail/container_or_allocator_rebind.hpp | 3 +- .../container/detail/container_rebind.hpp | 36 ++++++++++++------- 2 files changed, 24 insertions(+), 15 deletions(-) diff --git a/include/boost/container/detail/container_or_allocator_rebind.hpp b/include/boost/container/detail/container_or_allocator_rebind.hpp index 1525e41..e6f27b2 100644 --- a/include/boost/container/detail/container_or_allocator_rebind.hpp +++ b/include/boost/container/detail/container_or_allocator_rebind.hpp @@ -38,8 +38,7 @@ struct container_or_allocator_rebind_impl template struct container_or_allocator_rebind_impl - : real_allocator -{}; +{ typedef void type; }; template struct container_or_allocator_rebind diff --git a/include/boost/container/detail/container_rebind.hpp b/include/boost/container/detail/container_rebind.hpp index 854291a..4c34209 100644 --- a/include/boost/container/detail/container_rebind.hpp +++ b/include/boost/container/detail/container_rebind.hpp @@ -26,6 +26,16 @@ namespace boost { namespace container { namespace dtl { + template + struct void_or_portable_rebind_alloc + { + typedef typename allocator_traits::type>::template portable_rebind_alloc::type type; + }; + + template + struct void_or_portable_rebind_alloc + { typedef void type; }; + template struct container_rebind; @@ -34,14 +44,14 @@ namespace dtl { template