1397 Commits

Author SHA1 Message Date
Alexander Grund
83b4420a28 Update Link to regression test matrix in README 2025-08-25 17:26:10 +02:00
zjyhjqs
341cda2406 Add option to use header-only Boost::container 2025-08-25 23:22:57 +08:00
Ion Gaztañaga
96653536f1 Fixes #309 ("Performance regression of boost::container::static_vector introduced in boost v1.86") 2025-08-14 20:14:32 +02:00
Ion Gaztañaga
52ad24fe0a Add GitHub #307 to release notes 2025-08-12 19:15:15 +02:00
Ion Gaztañaga
b6a2a6ba6a Merge pull request #307 from TheJCAB/fix-MSVC-C4146-warnings
Fix all instances of MSVC warning C4146 (unsigned negation)
2025-08-12 19:12:50 +02:00
Ion Gaztañaga
456e20e415 Ignore new experimental new_deque implementation 2025-08-12 17:59:44 +02:00
Ion Gaztañaga
74c06d3a5d Protect iwth BOOST_CXX_VERSION >= 201103L as Boost.Iterator does not support C++03 2025-08-12 17:59:29 +02:00
Juan Carlos Arevalo Baeza (JCAB)
18f29c6eda Fix all instances of MSVC warning C4146 (unsigned negation)
Unsigned negation is a well-defined operation in C and C++ and it is commonly used when doing bit manipulation of unsigned integers, because it builds a high-pass bitmask.

For instance, if `X` is known to be a power of two, `-X` is precisely the mask needed to align a value down to a multiple of `X` by means of a bit-wise `&` operation.

However, it can occasionally be flagging a bug, when the original intent was mathematical negation. For this reason, an explicit fix is preferred to suppressing this warning.

This change fixes all the instances of unsigned negation of the form `-X` to `0 - X`.

It also includes a drive-by spot-fix for the macro `left_bits(x)` whose parameter was missing the usual parenthesis. This was benign in all the uses of the macro.
2025-07-30 15:35:34 -07:00
Ion Gaztañaga
e680bd79a2 Fix class invariant comment. In this implementation default constructed deque make no allocation so in that case start and finish are singular iterators. 2025-07-30 23:57:26 +02:00
Ion Gaztañaga
ba82a1da7d Use windows 2025 runner 2025-07-07 23:41:45 +02:00
Ion Gaztañaga
8ca003cabb Remove Windows 2019 as it's not longer supported in github 2025-07-07 11:53:23 +02:00
Ion Gaztañaga
e8baf848bc Fixes #250 ("Custom container leads to "invalid use of incomplete type" for "struct boost::container::dtl::container_rebind"") boost-1.89.0 2025-05-21 12:05:35 +02:00
Ion Gaztañaga
aa4b215681 Add clang-19 toolset 2025-05-20 09:18:01 +02:00
Ion Gaztañaga
b13c1fe8a4 Avoid C++03 testing in clang/libc++ 2024-12-23 22:41:29 +01:00
Ion Gaztañaga
d12528d972 Disable "-Wdeprecated-declarations" for max_size which was deprecated in the standard. 2024-12-23 21:53:47 +01:00
Ion Gaztañaga
bae5554f54 Use SFINAE to avoid errors in C++03 mode and std::pair 2024-12-23 21:53:13 +01:00
Ion Gaztañaga
ae221a13f7 Fix GCC compiler versions 2024-12-23 21:10:52 +01:00
Ion Gaztañaga
fad402d037 Fixes #234 ("dlmalloc_ext_2_8_6.c⚠️ iteration 2305843009213693951 invokes undefined behavior") 2024-12-23 19:35:53 +01:00
Ion Gaztañaga
a6a41e2356 FIxes #297 ("flat_map::try_emplace does not compile if allocator has construct") 2024-12-22 22:02:07 +01:00
Ion Gaztañaga
1f543216d4 Disable Wdeprecated-declarations when using deprecated allocator 2024-11-28 13:17:24 +01:00
Ion Gaztañaga
65dc4d1ac6 Use static_assert instead of runtime checks for "has_trivial_destructor_after_move" 2024-11-27 21:59:28 +01:00
Ion Gaztañaga
b421899221 Remove deprecated macos-12 and add macos-15 2024-11-27 21:58:51 +01:00
Ion Gaztañaga
866fd30df1 Update changelog with bug 296 boost-1.88.0.beta1 boost-1.88.0 boost-1.87.0 2024-11-25 16:07:30 +01:00
Ion Gaztañaga
3e70ecfa80 Avoid comparing iterators that could have been invalidated after erase() 2024-11-24 22:31:38 +01:00
Ion Gaztañaga
a0848ceaf1 Fixes #295 ("Bug in small_vector::swap") 2024-11-21 15:49:08 +01:00
Ion Gaztañaga
83b8d5748d Use #<boost/move/detail/std_ns_begin/end.hpp> before using BOOST_MOVE_STD_NS_BEG 2024-10-19 22:48:58 +02:00
Ion Gaztañaga
608bcb45a9 Merge pull request #291 from Lastique/patch-1
Improve description of stored_size
boost-1.87.0.beta1
2024-10-13 01:04:47 +02:00
Andrey Semashev
fc81064ee2 Improve description of stored_size
This improves wording of `stored_size` parameter descriptions and also fixes QuickBook syntax.
2024-10-13 01:57:05 +03:00
Ion Gaztañaga
af58c7d226 Added stored_size option to small_vector 2024-10-13 00:29:12 +02:00
Ion Gaztañaga
13603d7de1 Added stored_size option to static_vector 2024-10-12 23:22:59 +02:00
Ion Gaztañaga
c4cfad7402 Disable unreachable code warning for MSVC 2024-10-01 00:17:40 +02:00
Ion Gaztañaga
27e5a5dc8e Update changelog with 261 and reorder issues fixed in Boost 1.86. 2024-09-30 23:19:14 +02:00
Ion Gaztañaga
78d1a30e65 Fixes #261 ('"End iterators are not dereferencable") 2024-09-30 23:18:41 +02:00
Ion Gaztañaga
0a62c979a7 Use boost::hash instead of boost::hash_value (properly tests #290 use case) 2024-09-30 21:06:01 +02:00
Ion Gaztañaga
bf029b6a52 - Adds compatibility tests between string and std::string_view
- Fixes #290 ("boost::hash<container::string> doesn't match boost::hash<std::string_view>")
2024-09-30 16:00:12 +02:00
Ion Gaztañaga
18a86594b6 Fix some Wshadow warnings for old GCCs 2024-09-30 15:59:00 +02:00
Ion Gaztañaga
4cc14fc42c Propagate the potentially "void" allocator to the underlying vector to shorten symbol name lengths. 2024-09-11 21:22:54 +02:00
Ion Gaztañaga
49440c3525 Add compile-time check to make sure allocator_type::value_type and container's value_type are the same type. 2024-09-10 23:50:24 +02:00
Ion Gaztañaga
5bdca12ac7 Merge branch 'develop' of github.com:boostorg/container into develop 2024-09-09 18:01:29 +02:00
Ion Gaztañaga
84e852f638 Fix GCC comparison for flat_map tests 2024-09-09 18:01:21 +02:00
Ion Gaztañaga
f2fb40fe9e Merge branch 'develop' of github.com:boostorg/container into develop 2024-09-09 17:35:04 +02:00
Ion Gaztañaga
12afa8457f Disable std::vector as underlying sequence in old GCCs as we have compilation errors due to unsupported features. 2024-09-09 17:34:53 +02:00
Ion Gaztañaga
13180fd601 Disable std::vector as underlying sequence in old GCCs as we have compilation errors due to unsupported features. 2024-09-09 13:53:24 +02:00
Ion Gaztañaga
e9db423fb6 Update changelog for 1.87 2024-09-09 11:06:55 +02:00
Ion Gaztañaga
72a6b1e00e Fixes #288 ("Compile error when using flat_map::extract_sequence with small_vector") 2024-09-09 10:54:14 +02:00
Ion Gaztañaga
daa81ed5bb Expand flat_map testing coverage 2024-09-09 00:57:30 +02:00
Ion Gaztañaga
c552a23d96 Use BOOST_CXX_VERSION instead of __cplusplus 2024-09-09 00:55:18 +02:00
Ion Gaztañaga
d26e35d468 Fix typos, unneded empty lines 2024-09-09 00:42:05 +02:00
Ion Gaztañaga
69136f9967 Optimize merge and sort with the utility unused_storage 2024-09-09 00:40:54 +02:00
Ion Gaztañaga
bd8c8b0327 Add unused_storage optimization function 2024-09-09 00:37:47 +02:00