Edward Catmur
b075bce22e
Use real_allocator to find allocator when rebinding
...
After 83bb62fed3 the allocator parameter of
e.g. small_vector can be void. Use real_allocator to convert this to the
actual allocator used by the container.
2019-04-24 22:38:09 +02:00
Adam Wulkiewicz
ae6480f2a0
Prefix aligned_storage with dtl:: (workaround for msvc 10, 11, 12).
...
see https://github.com/boostorg/container/issues/112
2019-04-01 19:38:27 +02:00
Ion Gaztañaga
c5869d50de
Merge pull request #109 from Breakthrough/develop
...
Get rid of integer overflow in copy_move_algo.hpp (-fsanitize=integer).
2019-03-30 12:34:40 +01:00
Ion Gaztañaga
7efea237e1
Add forceinline to trivial cases
2019-03-30 12:32:39 +01:00
Ion Gaztañaga
0691018321
Avoid using is_convertible during allocator version detection to avoid incomplete type problems in clang compilers. has_version, has already checked the existence of the "version" typedef.
2019-03-26 22:42:10 +01:00
Brandon Castellano
3d135cc308
Get rid of integer overflow (-fsanitize=integer).
2019-03-20 14:40:19 -04:00
Ion Gaztañaga
da21340323
Fix #105 ("Fix gcc -Wdeprecated-copy")
2019-03-05 12:15:42 +01:00
Ion Gaztañaga
2b3775985e
Add BOOST_CONTAINER_FORCEINLINE
2019-03-05 12:11:43 +01:00
Ion Gaztañaga
b5c25ea058
Use boost::container placement new to avoid ambiguities in overload resolution.
2019-01-31 00:27:30 +01:00
Brandon Castellano
38b854b296
Restore indentation.
2019-01-28 19:59:59 -05:00
Brandon Castellano
33423d4301
Fix compilation issues in detail/flat_tree.hpp.
2019-01-28 15:07:21 -05:00
Ion Gaztañaga
83bb62fed3
Default allocator parameter changed form new_alloator<T> to void to reduce symbol lenghts
2019-01-10 22:54:58 +01:00
Ion Gaztañaga
80789255b9
Fix typo _LIBCPP_VERSION -> _LIBCPP_DEPRECATED_ABI_DISABLE_PAIR_TRIVIAL_COPY_CTOR
2019-01-07 00:56:44 +01:00
Ion Gaztañaga
2b5197a5cb
Fixes Issue #97
2019-01-07 00:38:15 +01:00
Ion Gaztañaga
2f314f5ff9
Explicitly state return type as movelib's enable_if has changed defaults to be more sfinae-friendly
2019-01-03 03:31:40 +01:00
Marc Fehling
96ac837d47
Workaround: Intel compilers do not offer CTAD yet.
2018-12-23 22:14:39 +01:00
Ion Gaztañaga
51669a5330
Complete pull #94 with flat_set/map/set containers
2018-11-29 23:37:10 +01:00
Ion Gaztañaga
be2ff22a82
Fix GitHub #90 ("UBSAN failures detected in preflight CI PR")
2018-11-13 22:19:30 +01:00
Ion Gaztañaga
cb21746b80
Rewrite CTAD and SFINAE-out overloads as the standard requires
2018-11-12 22:52:45 +01:00
Tobias Ludwig
b7355bb2b4
add missing warning re-enabling include
...
fixes msvc warning C5032: "detected #pragma warning(push) with no corresponding #pragma warning(pop)"
2018-10-29 22:31:52 +01:00
Ion Gaztañaga
76b181f024
Make some sanitizers happier avoiding wraparound.
2018-09-29 09:58:52 +02:00
Ion Gaztañaga
0b39d57b6a
Enable again push_back/push_front.
2018-09-29 09:58:24 +02:00
Ion Gaztañaga
c0a1c5cfc0
Fix invalid multiallocation_chain iterator increment after memory was overwritten.
2018-09-29 09:57:36 +02:00
Ion Gaztañaga
92e5ffb151
Add BOOST_LIKELY hints
2018-09-26 01:11:34 +02:00
Ion Gaztañaga
e787c4a24d
Use uninitialized memory for node-based containers to improve aliasing conformance
2018-09-26 01:10:37 +02:00
Ion Gaztañaga
1e509c308e
Add ASAN detection macro (BOOST_CONTAINER_ASAN)
2018-09-26 01:09:44 +02:00
Ion Gaztañaga
d242914572
Forward declare equal_to
2018-09-26 01:09:19 +02:00
Ion Gaztañaga
09e757ee1c
Reenable some commented operations
2018-09-26 01:09:02 +02:00
Ion Gaztañaga
ffbf76df00
Add more constructor overloads to support future unordered containers.
2018-09-15 01:23:23 +02:00
Ion Gaztañaga
25a109f8d2
Export boost::move_detail::nat2 and boost::move_detail::nat3 to container detail namespace
2018-09-15 01:22:18 +02:00
Ion Gaztañaga
60aea31db7
Make value_to_node_compare return type configurable
2018-09-15 01:21:47 +02:00
Ion Gaztañaga
43c0d7a731
Fix some type punning warnings, avoiding forming a reference to non-constructed objects
2018-09-15 01:20:43 +02:00
Ion Gaztañaga
5ab5c7de63
Add noexcept_if to tree::swap
2018-09-15 01:18:27 +02:00
Ion Gaztañaga
6504af8708
Disable false positives on "-Wstringop-overflow" and "-Warray-bounds" in release mode
2018-09-15 01:15:25 +02:00
Ion Gaztañaga
f28fe5d33e
Fix some type punning warnings, avoiding forming a reference to non-constructed objects
2018-09-15 00:52:18 +02:00
Ion Gaztañaga
d4ff624264
Fixes GitHub #82 : "Function definition in header file".
2018-08-29 22:19:29 +02:00
Ion Gaztañaga
139db663a3
* Implemented C++20 contains() for associative containers as specified in P0458R2.
...
* Fixed serious bug in heterogeneous lookup functions (is_transparent was broken).
2018-08-13 15:36:00 +02:00
Ion Gaztañaga
62a8b6666e
Disable -Wclass-memaccess for GCC 8
2018-06-16 16:35:35 +02:00
Ion Gaztañaga
4faa05e36c
More traits to support additional triviality for pair.
2018-06-16 14:45:20 +02:00
Ion Gaztañaga
9a22431578
* Clean up constructor template auto deduction guides to use Boost.Container traits
...
* GitHub #73 : '"triviality of pair".
* Fixed race condition bug in unsynchronized_pool_resource
2018-06-14 13:17:55 +02:00
Ion Gaztañaga
ed50d14e9e
Change forward_as_tuple to forward_as_tuple_impl as there are ambiguities when std headers are included. It's is used only in the pair test
2018-05-14 11:49:35 +02:00
Ion Gaztañaga
48c21e3187
Implemented C++14's heterogeneous lookups.
2018-05-01 14:55:24 +02:00
Ion Gaztañaga
04b0791593
* Fixed adaptive pool bugs
...
* Improved adaptive pool testing enabling invariant checking in debug mode.
* New compile-time and runtime calculated parameters for adaptive_pool.
* New test comparing set with default allocator or adaptive pool
2018-04-29 12:42:04 +02:00
Ion Gaztañaga
42c6be5887
Fixes Trac #13533 : "Boost vector resize causes assert(false)"
2018-04-29 12:37:35 +02:00
Ion Gaztañaga
f0736ba73a
Use new "data" member char array in aligned_storage::type for placement new, to avoid breaking strict aliasing.
2018-01-30 14:20:52 +01:00
Ion Gaztañaga
feeafbe9f3
Use pdqsort to sort unique values.
2017-12-31 21:08:19 +01:00
Ion Gaztañaga
6ce2b2d0f8
Add improved range insertion to flat associative containers and improve merge operation for vector.
2017-12-26 22:04:15 +01:00
Ion Gaztañaga
3c6f4ea2ed
Forward declare correction vector iterator
2017-12-20 13:12:47 +01:00
Ion Gaztañaga
2802a1f50d
- Add configuration options to vector
...
- Cleanup tree configuration options
2017-12-10 23:33:41 +01:00
Ion Gaztañaga
fa2494631a
Use namespace dtl instead of container_detail to avoid excessively long symbol names.
2017-11-07 00:51:46 +01:00