From e47eef3b6bfed3a56ac1cd3d3601d99910e66f66 Mon Sep 17 00:00:00 2001 From: LE GARREC Vincent Date: Mon, 28 Oct 2019 13:01:04 +0100 Subject: [PATCH] Removed deprecated std::allocator Fix issue#67 Based on patch from LibreOffice https://cgit.freedesktop.org/libreoffice/core/commit/?id=677c8de4fa79cd9b278b142013ba7f1c9e4e41c3 and pull request from boost/bimap https://github.com/boostorg/bimap/pull/15 --- include/boost/format/alt_sstream_impl.hpp | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/include/boost/format/alt_sstream_impl.hpp b/include/boost/format/alt_sstream_impl.hpp index 998f8b2e..a9d43425 100644 --- a/boost/format/alt_sstream_impl.hpp +++ b/boost/format/alt_sstream_impl.hpp @@ -255,10 +255,20 @@ namespace boost { if(0 < add_size) { new_size += add_size; #ifdef _RWSTD_NO_CLASS_PARTIAL_SPEC + #ifdef BOOST_NO_CXX11_ALLOCATOR void *vdptr = alloc_.allocate(new_size, is_allocated_? oldptr : 0); + #else + void *vdptr = std::allocator_traits::allocate( + alloc_, new_size, is_allocated_? oldptr : 0); + #endif newptr = static_cast(vdptr); #else + #ifdef BOOST_NO_CXX11_ALLOCATOR newptr = alloc_.allocate(new_size, is_allocated_? oldptr : 0); + #else + newptr = std::allocator_traits::allocate( + alloc_, new_size, is_allocated_? oldptr : 0); + #endif #endif }