Commit Graph

1208 Commits

Author SHA1 Message Date
Ion Gaztañaga
f0708dedc9 Merge pull request #314 from nigels-com/resolve-clang-19-warnings
Resolve clang-19 warnings for Issue #300 - pointer to non-trivially copyable type
2025-09-06 12:26:24 +02:00
Ion Gaztañaga
d618e482a8 Merge pull request #316 from nigels-com/ifdef__cpp_sized_deallocation
__cpp_sized_deallocation is not always defined (clang is opt-in) for Issue #306
2025-09-06 12:20:07 +02:00
Ion Gaztañaga
3e07b0d4db Merge pull request #318 from nigels-com/whitespace-fixup
Minor whitespace tidy-up
2025-09-06 12:18:16 +02:00
Nigel Stewart
bdce6c01fc Minor whitespace tidy-up 2025-09-05 16:30:25 +10:00
Nigel Stewart
f0b0dacf27 __cpp_sized_deallocation is not always defined (clang is opt-in) for Issue #306 2025-09-05 15:59:48 +10:00
Nigel Stewart
f6fdd0945c Resolve clang-19 warnings for Issue #300 - pointer to non-trivially copyable type 2025-09-05 12:06:11 +10:00
Ion Gaztañaga
7972bb2c97 Fixes #305: ("Warnings with -Wstrict-prototypes"). 2025-08-26 00:35:29 +02:00
Ion Gaztañaga
db5b2f8a3f Add #294 to release notes 2025-08-26 00:10:19 +02:00
Ion Gaztañaga
98834ad36e Merge pull request #294 from zjyhjqs/feat/header-only-option
CMake: Add option to use header-only `Boost::container`
2025-08-26 00:09:14 +02:00
Ion Gaztañaga
a89742f659 Merge pull request #311 from Flamefire/test-link-update
Update Link to regression test matrix in README
2025-08-25 23:15:16 +02:00
Ion Gaztañaga
862ae36735 Fixes #310 ("flat_map: Mention correct type in documentation of emplace and emplace_hint" 2025-08-25 23:13:16 +02:00
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