Ion Gaztañaga
2ed37446bc
Update changelog with #273 and #269
2024-05-23 23:55:34 +02:00
Ion Gaztañaga
9183729119
Update changelog with #277 and #280
2024-05-23 23:35:10 +02:00
Ion Gaztañaga
397fbda8be
Fixes #280 ("Several containers don't support non-movable types when move assigning")
2024-05-23 23:28:54 +02:00
Ion Gaztañaga
c9e544df83
Fix typos and bad link
2024-03-29 22:05:04 +01:00
Ion Gaztañaga
6291e6c1bd
Update quickbook version to 1.7 and fix detected errors in qbk
2024-03-18 00:01:22 +01:00
Ion Gaztañaga
fb822f0435
Update 1.85 changelog
2024-01-03 02:33:19 +01:00
Ion Gaztañaga
52013a99ef
Fixes #225 ("variable set but not used in dlmalloc_ext_2_8_6.c")
2023-04-18 23:12:33 +02:00
Ion Gaztañaga
3ba7237b32
Update changelog with #242
2023-04-18 22:51:00 +02:00
Ion Gaztañaga
22357b34b7
Update changelog with #233
2023-03-13 13:31:16 +01:00
Ion Gaztañaga
db96d2ad47
Fixes #240 ("_GLIBCXX_DEBUG detects issues in flat_set/map")
2023-02-23 22:16:10 +01:00
Ion Gaztañaga
5cea4e8718
Fixes #236 ("flat_tree::erase_unique uses wrong iterator")
2023-02-13 10:04:07 +01:00
Ion Gaztañaga
3ef88e47b5
Update changelog with issue #238 ("Containers should not be using memset to value-initialize POD types")
2023-02-13 08:57:31 +01:00
Giuseppe D'Angelo
b694ada294
Do not memset(0) POD types
...
"POD" is the wrong type trait to determine if something can be safely
zero-filled in order to achieve zero initialization. Consider a type
like
struct POD { int POD::*ptr; };
This is a POD; its value initialization needs to value initialize the
member, and since it's a pointer, that's zero initialization, and that's
setting the pointer to null.
On Itanium, a null pointer to data member is not zero filled; it actually
has the value -1u.
Hence, zero-filling via memset(0) a POD object like the one above is
erroneous. Unfortunately there is no type trait in C++ that we can use to
know if a given datatype can be value initialized by zero-filling -- we
can check for trivial constructability, but that's a necessary
condition, not a sufficient one (POD above is also trivially
constructible).
The test is disabled on MSVC because of a compiler bug.
Fixes #238
2023-02-02 11:29:53 +01:00
Ion Gaztañaga
2f70cddf55
Update changelog with #232
2022-12-11 23:58:08 +01:00
Ion Gaztañaga
4bed49ee14
Reworked devector's relocation options, instead of relocation_limit<relocation_limit_XX>, it's specified by single "relocate_on_XX"
2022-10-01 23:39:28 +02:00
Ion Gaztañaga
704bf10058
Refactor advanced insertion algorithms and implement a new devector insert strategy, moving elements to the middle if there is a reasonable free capacity at the other end of the container.
2022-09-20 00:22:19 +02:00
Ion Gaztañaga
231dd48e70
Fixes #211 ("Use atomics for pmr get/set default resource")
2022-07-25 01:28:58 +02:00
Ion Gaztañaga
b8c59d595c
Fixes #210 : ("Use sized delete in boost::container::new_allocator...")
2022-07-16 20:55:42 +02:00
Ion Gaztañaga
0d5068a0cc
Fixes #209
2022-07-16 17:26:09 +02:00
Ion Gaztañaga
b7725ea473
Fixes #218 ("small_vector static capacity is too small when not a multiple of 8 bytes")
2022-07-10 18:36:02 +02:00
Ion Gaztañaga
34cd414280
Fixes #221 ("flat_set and friends should offer a const sequence_type& sequence() const method (...)")
2022-06-25 20:29:16 +02:00
Ion Gaztañaga
4ea5cd7911
Fixes GitHub #223 ("Possible copypaste typo")
2022-06-25 19:49:54 +02:00
Ion Gaztañaga
d3ec5c677d
Fixes #222 ("Fix incomplete type error when using list with pair")
2022-06-25 19:40:05 +02:00
Ion Gaztañaga
f548e87cf5
Fixes #217 ("Broken link in docs")
2022-05-15 08:49:53 +02:00
Ion Gaztañaga
f5b2c7ba74
Fixes #214 : ("string is not properly null-terminated in assignments")
2022-03-06 22:37:41 +01:00
Ion Gaztañaga
3787fc3021
Fixes #207 ("boost.vector doesn't work with common_iterator")
2022-01-12 01:38:05 +01:00
Ion Gaztañaga
25f90dbb28
Update changelog with #195
2022-01-07 22:22:03 +01:00
Ion Gaztañaga
2e583241c1
Fixes #204 ("Inconsistent noexcept-ness of static_vector::reserve").
2022-01-07 11:15:27 +01:00
Ion Gaztañaga
cf3d6d3c51
Fixes #199 ("Apply LWG issue 3471")
2022-01-06 23:33:54 +01:00
Ion Gaztañaga
0eb901ee05
Fix wrongly committed boost_iterator_comp_test version
2021-12-30 23:27:40 +01:00
Ion Gaztañaga
3f76f9fdf7
Fixes #206 ("operator-> on static_vector::iterator causes cast alignment warning")
2021-12-28 15:17:15 +01:00
Ion Gaztañaga
f6a03fd3f2
Fixes #197 ("small_vector::swap causes spurious allocations and suboptimal performance")
2021-11-01 00:19:16 +01:00
Ion Gaztañaga
bcd41a1c64
- Add BOOST_CONTAINER_FORCEINLINE to trivial string internal functions
...
- Fixes #192 ("basic_string::clear() has poor codegen compared to STL implementations")
2021-09-13 14:19:38 +02:00
Ion Gaztañaga
bfbab6ed7f
Fixes #186 ("Warnings out the wazoo")
2021-08-09 00:59:57 +02:00
Ion Gaztañaga
1cc35bbc98
Fixes #187 ("flat_map::erase and unique keys")
2021-08-08 00:38:29 +02:00
Ion Gaztañaga
aaa2485ebf
Fixes #188 ("Build fails when RTTI is disabled")
2021-08-08 00:06:01 +02:00
Ion Gaztañaga
15bed478eb
Fixes #185 ("Including headers adds exports"), replacing BOOST_SYMBOL_EXPORT with BOOST_SYMBOL_VISIBLE.
2021-05-03 09:18:51 +02:00
Ion Gaztañaga
b7d48f1e08
Fixes #180 : ("polymorphic_allocator's copy special member functions are not noexcept")
2021-04-21 00:53:43 +02:00
Ion Gaztañaga
ad7167c564
Fixes #150 ("Use std::contiguous_iterator_tag if available"), tested in MSVC and GCC.
2021-04-21 00:43:31 +02:00
Ion Gaztañaga
249d537b58
Add BOOST_NOEXCEPT macro to doxygen
2021-04-19 21:53:32 +02:00
Ion Gaztañaga
16cada57ea
Fixes #184 ("Issues with custom exceptions implementation")
2021-04-19 21:52:55 +02:00
Ion Gaztañaga
d7e99e56c6
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-01 23:50:50 +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
b17dabf47a
Fixes #141 ('small_vector does not propagate no throw properties of move operation of contained type')
2020-12-30 00:19:22 +01:00
Ion Gaztañaga
93bbf37dad
Fixes #139 ("flat_map merge and iterators").
2020-11-14 00:10:46 +01:00
Ion Gaztañaga
ae93df82ea
Fixes #164 ("Compile error when using pmr::map with a std::pair; works when using a std::tuple")
2020-11-13 23:43:02 +01:00
Ion Gaztañaga
2a458005d9
Fixes #171 ("deque::clear() uses undefined behaviour")
2020-11-10 10:08:03 +01:00
Ion Gaztañaga
6100bcfdeb
Update changelog for 1.76
2020-11-05 14:30:41 +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
99d56db196
Update changelog with #162 .
2020-11-02 15:08:19 +01:00