mirror of
https://github.com/boostorg/container.git
synced 2026-07-10 08:00:51 +02:00
Force explicit alignment argument to private_node_pool and shared_node_pool to avoid bugs on overaligned types.
This commit is contained in:
@@ -228,7 +228,7 @@ void list_test_template(std::size_t num_iterations, std::size_t num_elements, bo
|
||||
//Release node_allocator cache
|
||||
typedef boost::container::dtl::shared_node_pool
|
||||
< (2*sizeof(void*)+sizeof(int))
|
||||
, AdPoolAlignOnlyV2::nodes_per_block> shared_node_pool_t;
|
||||
, AdPoolAlignOnlyV2::nodes_per_block, 0> shared_node_pool_t;
|
||||
boost::container::dtl::singleton_default
|
||||
<shared_node_pool_t>::instance().purge_blocks();
|
||||
|
||||
|
||||
@@ -40,7 +40,7 @@ namespace dtl {
|
||||
//!nodes allocated per block (NodesPerBlock) are known at compile time
|
||||
template< std::size_t NodeSize
|
||||
, std::size_t NodesPerBlock
|
||||
, std::size_t NodeAlign = 0
|
||||
, std::size_t NodeAlign
|
||||
>
|
||||
class private_node_pool
|
||||
//Inherit from the implementation to avoid template bloat
|
||||
@@ -66,7 +66,7 @@ class private_node_pool
|
||||
|
||||
template< std::size_t NodeSize
|
||||
, std::size_t NodesPerBlock
|
||||
, std::size_t NodeAlign = 0
|
||||
, std::size_t NodeAlign
|
||||
>
|
||||
class shared_node_pool
|
||||
: public private_node_pool<NodeSize, NodesPerBlock, NodeAlign>
|
||||
|
||||
Reference in New Issue
Block a user