Ion Gaztañaga
a5cc4f1eef
Fix find/replace bug in test name
2021-04-19 21:53:54 +02:00
Ion Gaztañaga
dc4cf460a7
Add missing <functional> for std::less
2021-01-15 18:05:33 +01:00
Ion Gaztañaga
95538bfdc2
Update static assert test and remove unneeded <string> include.
2021-01-02 22:47:19 +01:00
Ion Gaztañaga
150569375f
<boost/static_string.hpp> include is not needed.
2021-01-02 17:02:47 +01:00
Ion Gaztañaga
22f34b7b02
Silence warnings in tests
2021-01-02 16:24:56 +01:00
Ion Gaztañaga
0153ee1920
Rewrite [flat_]map/set insert overloads to be more standard compliant. Fixes #102 ("flat_map::insert ambiguous with initializer list & pairs that need to convert").
2021-01-02 00:37:44 +01:00
Ion Gaztañaga
621cd3a0ab
Avoid using inheriting constructors and initializer_list::cbegin/cend to be nicer with older compilers
2021-01-01 23:44:56 +01:00
Ion Gaztañaga
80697e7c0f
#pragma GCC diagnostic push is available from GCC 4.6, not from GCC 4.5
2021-01-01 23:43:44 +01:00
Ion Gaztañaga
d5a830434e
- Replaced default standard exception classes with Boost.Container own classes, reducing considerably the included files overhead
2020-12-30 15:07:32 +01:00
Ion Gaztañaga
c98a5396c4
Erase unneeded test
2020-11-13 23:42:02 +01:00
Ion Gaztañaga
0a0ad0009e
Add support for [[nodiscard]]:
...
- Decorate container and allocator functions.
- Make sure to disable warnings in tests
- Update doxygen documentation to support it
2020-11-05 14:24:35 +01:00
Ion Gaztañaga
8a2444201a
Avoid GCC's overflow warnings for operator new.
2020-11-03 10:59:19 +01:00
Ion Gaztañaga
99d56db196
Update changelog with #162 .
2020-11-02 15:08:19 +01:00
Ion Gaztañaga
d4c8bd70ea
Fixes #152 ("Tree-based containers have troubles with move-only types")
2020-10-31 23:09:52 +01:00
Ion Gaztañaga
3cd08df6fc
Avoid including <boost/container/detail/config_begin.hpp> in tests to catch all possible warnings.
2020-10-25 17:25:39 +01:00
Ion Gaztañaga
4bebeb2353
Make sure test suite/examples/bench compile with exceptions disabled (exception-handling=off)
2020-10-22 01:12:59 +02:00
Ion Gaztañaga
03f030af69
Fixes #156 : ("Compile error with vector") and remove warnings about precission loss due to integer narrowing
2020-10-22 01:10:07 +02:00
Ion Gaztañaga
cdd6d9ad8a
Fixes #160 ("Usage of uses_allocator needs a remove_cvref_t")
2020-08-31 22:21:41 +02:00
Ion Gaztañaga
1ac7339ff4
Add test to erase the last element
2020-08-31 22:21:02 +02:00
Ion Gaztañaga
0b297019ec
Fixes #161 : ("polymorphic_allocator(memory_resource*) non-standard extension causes headache")
2020-08-31 13:37:11 +02:00
Ion Gaztañaga
ebcd0222b4
Integrate and adapt "devector's", from Thaler Benedek's implementation.
2020-08-10 00:16:58 +02:00
Ion Gaztañaga
f99da8551b
Use boost::container::vector/list instead of std
2020-08-09 23:24:13 +02:00
Ion Gaztañaga
0143caf985
Explicitly instantiate "stored_size" option to catch conversion warnings
2020-08-09 23:23:56 +02:00
Ion Gaztañaga
52aae65fcd
Fix unreachable code warning
2020-08-09 23:23:26 +02:00
Ion Gaztañaga
b946b779e6
Remove unused include
2020-08-09 23:23:13 +02:00
Ion Gaztañaga
974e8e641a
Fix "-Wdeprecated-copy" warnings
2020-08-09 23:21:46 +02:00
Ion Gaztañaga
2d9d28b81e
Fixed #128 ("moved from small_vector and static_vector calls destructor on elements in static part")
2020-07-12 13:48:38 +02:00
Ion Gaztañaga
4f37a023b0
Enable user warnings in tests to be able to fix them.
2020-07-12 11:06:01 +02:00
Ion Gaztañaga
80d742f860
Added C++03 portable aliases and tests. Fixes #129 ("Alias templates for small_flat_[multi]{set|map} using small_vector as container")
2020-05-25 01:50:23 +02:00
Ion Gaztañaga
52b9ae0e68
Fixes #145 ("Allocations not handled correctly in some cases of vector move with unequal allocators")
2020-05-25 00:35:07 +02:00
Robert Leahy
d4a0917821
RandomAccessIterator + 0
...
Previously the iterators of boost::container::deque would assert when
zero was added to them in at least the following situations:
- The iterator was obtained by a call to boost::container::deque::begin
and boost::container::deque::empty returns true
- The iterator was default constructed
This is inconsistent with the way in which the iterators of boost::
container::deque have behaved historically and is also inconsistent
with an understanding of iterators developed by analogy with pointers:
- Adding zero to a null pointer is valid despite the fact the null
pointer cannot be dereferenced
- Adding zero to a pointer that is one past the end yields a pointer
which is still one past the end and thus which has well defined
semantics
Fixed this issue and codified the expected behavior in unit tests.
2019-12-22 20:03:57 -05:00
Ion Gaztañaga
27c1fea452
Fixes #136 ("List of non BOOST-prefixed macros")
2019-12-19 05:29:46 +01:00
Bo Rydberg
0fa5193cea
Update throw tests to avoid segmentation violation
2019-12-05 17:49:58 +01:00
Ion Gaztañaga
0c95d4846f
Fix "count" with heterogeneous lookups in flat_map and flat_set
2019-06-22 10:26:36 +02:00
Jan Eisenhauer
3f09061d78
Remove usage of C++11 features.
2019-06-11 12:04:43 +02:00
Jan Eisenhauer
628289cb00
Solve copy-paste errors.
2019-06-11 11:51:28 +02:00
Jan Eisenhauer
a6b6f97a50
Solve copy-paste errors.
2019-06-11 11:17:01 +02:00
Jan Eisenhauer
3319fdb0c2
Merge remote-tracking branch 'origin/develop' into patch-1
2019-06-11 11:05:29 +02:00
Jan Eisenhauer
1aa15ead35
Add testcases for heterogeneous lookup with partial keys.
2019-06-11 10:23:13 +02:00
Ion Gaztañaga
7b62f360b7
Add missing tests for small vector and static vector
2019-06-08 13:01:24 +02:00
Mitsuru Kariya
f25c767a2b
Fix has_trivial_destructor_after_move
...
Most template type parameters 'Allocator' were modified their default type to void since 1.70.0.
These modifications cause has_trivial_destructor_after_move to compile error or yield wrong result.
So, fix them by changing specializations of has_trivial_destructor_after_move.
2019-06-01 22:36:54 +09:00
Ion Gaztañaga
e23c57337f
Fixes #107 ("Alignment ignored in resource_adaptor")
2019-05-05 02:06:46 +02:00
Ion Gaztañaga
24e420abe9
Add block size customization options to deque.
2019-04-28 19:18:22 +02:00
Ion Gaztañaga
06ee4f7a39
Fixes #118 ("Non-unique inplace_set_difference used in in flat_tree_merge_unique and iterator invalidation in insert_unique")
2019-04-24 22:49:50 +02:00
Ion Gaztañaga
e46210e046
Fixes #117 ("flat_map/map::insert_or_assign with hint has wrong return types")
2019-04-23 17:03:09 +02:00
Roland Dreier
1eb591e85c
Fix deallocating never-allocated storage in vector.merge()
...
If merge() is called on an empty vector, then priv_merge_in_new_buffer() will
call deallocate() with size 0 on the old (not-yet-allocated) vector storage.
This violates the Allocator requirement that the pointer passed to deallocate()
must have come from a call to allocate() with the same size.
Fix this by checking old_cap against 0, and also add a unit test for this bug.
2019-02-23 18:46:06 -08:00
Ion Gaztañaga
81d78dbefa
Fixed GitHub #98 : ("flat_map: insert_or_assign does not work with hint")
2019-02-02 00:25:09 +01:00
Ion Gaztañaga
a9ceb4d9c6
Better use forward declarations and export symbols
2019-01-03 03:32:03 +01:00
Ion Gaztañaga
4fc4cfd8d8
Fix GitHub #89 ("Build fails on clang-5 with libstdc++7-dev (C++17 issue)")
2018-11-13 23:17:51 +01:00
Ion Gaztañaga
cb21746b80
Rewrite CTAD and SFINAE-out overloads as the standard requires
2018-11-12 22:52:45 +01:00