diff --git a/include/boost/unordered/detail/foa.hpp b/include/boost/unordered/detail/foa.hpp index 5c6ca111..7770a9c2 100644 --- a/include/boost/unordered/detail/foa.hpp +++ b/include/boost/unordered/detail/foa.hpp @@ -1449,22 +1449,12 @@ public: emplace_type,element_type >::type; - using alloc_insert_type=typename std::conditional< - std::is_constructible< - value_type,emplace_type>::value, - emplace_type,value_type - >::type; - - using alloc_type= - typename boost::allocator_rebind::type; - storage s; - alloc_type alloc{al()}; auto *p=std::addressof(s.t_); - type_policy::construct(alloc,p,std::forward(args)...); + type_policy::construct(al(),p,std::forward(args)...); - drop_guard guard{alloc,p}; + drop_guard guard{al(),p}; return emplace_impl(type_policy::move(*p)); }