Commit Graph

1349 Commits

Author SHA1 Message Date
Ion Gaztañaga
ac523b2c1e Add more BOOST_CONTAINER_ATTRIBUTE_NODISCARD attributes and fix warnings triggered by this attribute 2025-12-18 15:23:56 +01:00
Ion Gaztañaga
8ce8b9ee43 Add nodiscard to memory resource 2025-12-18 11:25:32 +01:00
Ion Gaztañaga
1a0bbe0e79 Add __declspec(novtable) for memory_resource in MSVC compilers to slightly optimize code generation (just like MS STL does) 2025-12-18 10:02:13 +01:00
Ion Gaztañaga
03d4f4fef7 Place better BOOST_CONTAINER_DOXYGEN_INVOKED checks so that doxygen does not generate unwanted types in the documentation 2025-12-17 23:39:27 +01:00
Ion Gaztañaga
68b80e6ac7 Implemented C++20's uninitialized_construct_using_allocator and make_obj_using_allocator. 2025-12-17 22:00:52 +01:00
Ion Gaztañaga
f26b0ff58c Implement C++20's uninitialized_construct_using_allocator 2025-12-17 14:39:45 +01:00
Ion Gaztañaga
3183fc28cc Handle BOOST_CONSTEXPR macros in Jamfile 2025-12-17 14:39:16 +01:00
Ion Gaztañaga
cf54b3a333 Add #pragma once to devector.hpp 2025-12-17 14:38:42 +01:00
Ion Gaztañaga
2fe7163fa0 Hide uses_allocator_imp implementation detail from docs 2025-12-16 19:34:52 +01:00
Ion Gaztañaga
1ccebc915c Make sure pthread is used for cygwin 2025-12-16 19:34:36 +01:00
Ion Gaztañaga
df5010d5eb Make apt update more robust adding sleeps betwen retries 2025-12-13 17:20:34 +01:00
Ion Gaztañaga
c8e61a12ff Remove cxxstd variants for cygwin (already tested on Linux)
Add cygserver launch on cygwin
Leave only latest BSDs to speed up testing
2025-12-13 15:27:48 +01:00
Ion Gaztañaga
e2dcbb58cc Add "import testing ;" to bench 2025-12-11 15:24:19 +01:00
Ion Gaztañaga
4f62d12541 Add "import testing ;" 2025-12-11 15:16:24 +01:00
Ion Gaztañaga
9bddac68c0 Add BSD variants 2025-12-11 15:04:25 +01:00
Ion Gaztañaga
8723667fdd Add cygwin regression 2025-12-10 15:11:52 +01:00
Ion Gaztañaga
145bd51451 Fix instantiation error in MSVC for recursive types when evaluating the conditional defaulted destructor. 2025-12-09 22:38:10 +01:00
Ion Gaztañaga
db43fc9228 Fix unused variable warning when compiling without exceptions 2025-12-09 22:37:39 +01:00
Ion Gaztañaga
ccc9efcd74 Make static_vector<T, N>'s destructor trivial if T is trivial. 2025-12-09 17:11:57 +01:00
Ion Gaztañaga
6afcdbf11a Add C++03 for ASAN 2025-12-06 22:57:36 +01:00
Ion Gaztañaga
8e6a2012cd Use latest GCC for ubsan/asan and use separate runners for ubsan and asan test to improve test performance. 2025-12-06 21:35:05 +01:00
Ion Gaztañaga
50d012cd5d Rollback to Ubuntu 25.04 as 26.04 (still beta) package update might fail. 2025-12-06 19:28:18 +01:00
Ion Gaztañaga
34e0ad9fbb Avoid testing C++03 with libc++ 2025-12-06 19:24:48 +01:00
Ion Gaztañaga
fda4b2420b - Fix clang-20/libc++ installation
- Add C++03 to libc++
- Add Asan to tests
2025-12-06 19:20:04 +01:00
Ion Gaztañaga
0d9be824f3 Use containers for clang libc++ w/wo ubsan 2025-12-06 11:53:36 +01:00
Ion Gaztañaga
c3201cd4eb Add clang-20 libc++ w/wo Ubsan 2025-12-06 11:51:09 +01:00
Ion Gaztañaga
fe9fbbb6eb Use "-pipe" option for gcc-15 and latest clang 2025-12-06 11:47:04 +01:00
Ion Gaztañaga
6080373d92 Use Ubuntu 26.04 instead of 25.04 for GH actions 2025-12-06 11:27:04 +01:00
Ion Gaztañaga
6c5be5289d Install clang-20 for Ubuntu 25.04 2025-12-06 11:22:27 +01:00
Ion Gaztañaga
2a2f2ce1b3 Add gcc-15 and clang-20 to the regression testing 2025-12-06 11:06:41 +01:00
Ion Gaztañaga
7a2192b417 Fixes #323 ("flat_tree::try_emplace UB") 2025-12-06 11:03:24 +01:00
Ion Gaztañaga
ee24095f5c - Remove fallback_to_dispatch_uses_allocator
- Remove unused arg_alloc arguments
2025-11-30 23:23:35 +01:00
Ion Gaztañaga
97c0a899cc Change depinst call so that always uses "-C" 2025-11-30 17:24:08 +01:00
Ion Gaztañaga
3e04de4c9f Use "depinst.py -C" option to detect circular references 2025-11-30 17:10:20 +01:00
Ion Gaztañaga
bad90ed378 Fix copy-paste error: use boost/container/xxx instead of wrong boost/interprocess/xxx 2025-11-30 16:52:49 +01:00
Ion Gaztañaga
9ae8e433e4 Implement "fallback_to_dispatch_uses_allocator". This helper function tests if the target type is constructible from the original arguments. If so, uses the original arguments. If not, fallbacks to uses-allocator construction via dispatch_uses_allocator. 2025-11-30 00:47:13 +01:00
Ion Gaztañaga
8bce1f9ecd Remove constructible_with_allocator_suffix/constructible_with_allocator_prefix from documentation as they are not needed now. Utilities will reman anonymous to maintain a minimum backwards compatibility. 2025-11-29 22:41:19 +01:00
Ion Gaztañaga
e2d3cf7bd2 Use safe fallback with uses-allocator construction when prefix or suffix calls are not available. Instead of being ill-formed, ignore allocator argument, just like when uses_allocator<T>::value is false. 2025-11-29 21:54:21 +01:00
Ion Gaztañaga
fdf6b37b67 - Use newly added is_constructible to implement portably constructible_with_allocator_suffix/constructible_with_allocator_prefix 2025-11-29 21:51:31 +01:00
Ion Gaztañaga
5039410be5 Add is_constructible implementation, compatible with several C++03 compilers 2025-11-29 21:48:11 +01:00
Ion Gaztañaga
86a69d852e Use newly added limit_by_stored_size_type 2025-11-29 21:46:39 +01:00
Ion Gaztañaga
a682f10fbb Implement helper functions to deal with potential narrowing and avoid warnings 2025-11-29 21:46:06 +01:00
Ion Gaztañaga
dd5ad5672e Remove unneeded typename 2025-11-29 21:45:18 +01:00
Ion Gaztañaga
d2154ae3f6 Update README with active tests 2025-11-25 22:28:08 +01:00
Ion Gaztañaga
68914708b2 Add dummy allocator utility to be able to use allocator_traits machinery without instantiating a real allocator 2025-11-24 21:25:04 +01:00
Ion Gaztañaga
aca13505b8 Fix typo 2025-11-24 21:24:27 +01:00
Ion Gaztañaga
558e3f24e8 Fix typo 2025-11-23 00:43:27 +01:00
Ion Gaztañaga
7bae5106eb Optimize GH runner script:
- Disable debug info to improve disk performance
- Remove ancient Clang 3.5
- Add -pipe to avoid disk writing for intermediate files
- Separate 32 and 64 bit window tasks as Windows machines are much slower than Linux machines
2025-11-11 22:59:41 +01:00
Ion Gaztañaga
b48049378a Update release notes for Boost 1.91 2025-11-10 21:25:33 +01:00
Ion Gaztañaga
5353cfc736 Implement C++26 heterogeneous "insert" for set and flat_set. Range insertion functions in flat_tree are renamed to support some older compilers that have problems with SFINAE against the heterogeneous insert overload 2025-11-09 21:16:24 +01:00