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
Ion Gaztañaga
77699d11e6
Remove unneeded scope
2025-11-09 21:15:37 +01:00
Ion Gaztañaga
3a881a9e0b
Remove unnecessary clear() for heterogeneous "extract" testing
2025-11-09 21:15:02 +01:00
Ion Gaztañaga
16e890ca48
Remove old gcc 4.6-4.7 from regression tests
2025-11-07 23:51:39 +01:00
Ion Gaztañaga
e4f42d03cb
Implement heterogeneous "at()" operation for map/flat_map
2025-11-07 23:09:05 +01:00
Ion Gaztañaga
9f08eccc05
Implement C++26 heterogeneous operator[], refactor operator[] implementation.
2025-11-07 22:24:37 +01:00
Ion Gaztañaga
92d46cc151
Add C++26 transparent "try_emplace" to map and flat_map
2025-11-06 23:59:05 +01:00
Ion Gaztañaga
21725febaa
Add C++23 transparent extract() method to set/multiset/map/multimap
2025-11-05 22:31:54 +01:00
Ion Gaztañaga
d179658a08
Add small test to set/flat_map for transparent erase
2025-11-05 15:04:50 +01:00
Ion Gaztañaga
5610e49409
Fix transparent "erase" documentation
2025-11-05 13:49:05 +01:00
Ion Gaztañaga
4f7c7d0381
Test also c++2c mode
2025-11-05 00:24:10 +01:00
Ion Gaztañaga
d7a7836f31
Remove macos-13 and add macos-26
2025-11-05 00:06:43 +01:00
Ion Gaztañaga
f394ffc98a
Implement transparent insert_or_assign (C++26) for flat_map
2025-11-04 23:51:36 +01:00
Ion Gaztañaga
ade3238536
Remove copy-pasted text from map that does not apply to flat_map, since it's not a node-based container and does not implement extract operations.
2025-11-04 23:30:07 +01:00
Ion Gaztañaga
2932339965
Fix transparent erase signature to "K&&"
boost-1.90.0.beta1
boost-1.90.0
2025-11-03 23:55:52 +01:00
Ion Gaztañaga
73d91c52ce
Implement transparent insert_or_assign (C++26) for map.
2025-11-03 22:42:55 +01:00
Ion Gaztañaga
c7a3d86206
Fix incorrect return value description for insert_or_assign with hint.
2025-11-03 22:38:45 +01:00
Ion Gaztañaga
d9404f6d3a
Increase timeout value
2025-11-03 21:50:31 +01:00
Ion Gaztañaga
3fec38d9cc
Fix -Wcast-qual
2025-11-03 00:12:16 +01:00
Ion Gaztañaga
5923493b1f
Fix -Wsign-conversion
2025-11-03 00:11:52 +01:00
Ion Gaztañaga
1ef175aa91
Fix -Wcast-qual warnings.
2025-11-02 23:01:14 +01:00
Ion Gaztañaga
7ba8bae1be
Update changelog with #254
2025-11-01 22:12:14 +01:00
Ion Gaztañaga
22bc5024d5
Implement erase_if for map and flat_map
2025-11-01 21:50:14 +01:00