Update docs with new overaligned allocation changes.

This commit is contained in:
Ion Gaztañaga
2025-12-26 18:26:19 +01:00
parent c99257c1dc
commit a1a50581dd

View File

@@ -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"]].