From a1a50581dd5ff070b55d34a4ea6f2a2dbd7da8db Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ion=20Gazta=C3=B1aga?= Date: Fri, 26 Dec 2025 18:26:19 +0100 Subject: [PATCH] Update docs with new overaligned allocation changes. --- doc/container.qbk | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/doc/container.qbk b/doc/container.qbk index 9b00065..826daa8 100644 --- a/doc/container.qbk +++ b/doc/container.qbk @@ -1115,6 +1115,10 @@ the namespace `boost::container::pmr`. There are two groups, and offers some alternative utilities if the required C++11 features of the ['Library Fundamentals] specification are not available. +Finally, [*Boost.Container]'s polymorphic resource library includes support for +dynamic memory allocation for over-aligned types (introduced in C++17), in older +platforms. + [import ../example/doc_pmr.cpp] Let's review the usage example given in @@ -1451,9 +1455,9 @@ use [*Boost.Container]? There are several reasons for that: * Implemented C++20's [funcref boost::container::uninitialized_construct_using_allocator uninitialized_construct_using_allocator] and [funcref boost::container::make_obj_using_allocator make_obj_using_allocator]. * Added `[[nodiscard]]` to several allocator and PMR utilities. -* Implemented overaligned operator new/delete support for `new_allocator` and `pmr::new_delete_resource()`: - * Uses C++17's `cpp_aligned_new` if available. - * Uses alternative aligned allocation functions for Win32/Unix otherwise. +* Implemented overaligned allocation support for `new_allocator` and `pmr::new_delete_resource()`: + * If available, uses C++17's utilities under the `__cpp_aligned_new` feature. + * Uses alternative aligned allocation functions (`posix_memalign`, `aligned_alloc`, `_aligned_malloc`...) otherwise. * Fixed bugs/issues: * [@https://github.com/boostorg/container/issues/323 GitHub #323: ['"flat_tree::try_emplace UB"]].