2786 Commits

Author SHA1 Message Date
Braden Ganetsky
260418e4ee Fix cfoa tests 2024-02-11 11:22:28 -06:00
Braden Ganetsky
aff242dbaf Optimize emplace(k,v) for fca containers 2024-02-11 11:22:28 -06:00
Braden Ganetsky
4e6d4ade6c Optimize emplace(k,v) for foa and cfoa containers 2024-02-11 11:22:27 -06:00
Braden Ganetsky
4fbe450a65 Generalize alloc_cted_insert_type into allocator_constructed and remove the factory function alloc_make_insert_type() 2024-02-11 11:22:27 -06:00
Braden Ganetsky
bd5c9fc740 Add cfoa tests for emplace(k,v) 2024-02-11 11:22:27 -06:00
Braden Ganetsky
f411968ffd Add tests for immovable key_type 2024-02-11 11:22:26 -06:00
Braden Ganetsky
be7c63e1bf Add foa and fca tests for emplace(k,v) 2024-02-10 11:10:28 -06:00
Peter Dimov
1df37051ae Add msvc-14.1, msvc-14.2 /permissive- to Drone 2024-02-08 20:55:54 +02:00
Peter Dimov
c4dbda0f78 Add missing include 2024-02-08 20:52:34 +02:00
Peter Dimov
fa895edac2 Add msvc-14.3 /permissive- to Drone 2024-02-08 20:10:50 +02:00
Peter Dimov
43186b04d1 Add msvc-14.3 /permissive- to GHA 2024-02-08 19:59:47 +02:00
Braden Ganetsky
67c5cdb3a6
Optimize emplace() for exactly a value_type or init_type argument (#227)
* Add structs to count special member functions

* Add failing emplace tests, that will pass after making the optimization

* Optimize emplace() to not allocate when we already have a value_type or init_type

* Fix newly failing cfoa tests
2023-12-31 18:56:14 +01:00
joaquintides
75a94781d5
Fix/b2 5.0.0 (#228)
updated CI after b2 5.0.0 new requirements on the compiler used for self-build
2023-12-30 22:11:11 +01:00
joaquintides
76185abe80
extended workaround to GCC 4.9 2023-12-30 19:41:13 +01:00
Braden Ganetsky
0d2751c5e1
Extract at()'s throw_exception calls into noinline function (#223)
* Create function `detail::throw_out_of_range()` to make `at()` more inlineable

* Replace `boost::throw_exception()` with `detail::throw_out_of_range()`
2023-12-19 17:08:08 +01:00
joaquintides
f493603f5c [skip ci] editorial boost-1.84.0 2023-12-01 12:22:48 +01:00
Peter Dimov
74ca1b0e74 Update test/CMakeLists.txt 2023-11-30 17:54:53 +02:00
Peter Dimov
7b16324869 Regenerate CMakeLists.txt 2023-11-30 17:40:41 +02:00
joaquintides
6680e86b38 [skip ci] typo 2023-11-25 09:49:24 +01:00
joaquintides
3e76b1cf68
[skip ci] beautified some badges 2023-11-19 18:45:21 +01:00
joaquintides
22f29718e4
changed drone badges 2023-11-19 09:48:38 +01:00
joaquintides
f7c7f8fdd2
[skip ci] added Drone badges 2023-11-18 11:30:47 +01:00
joaquintides
7fd94b9df7
Fix/bucket iterator indirection operator (#220 rewrite) (#221)
* Add tests for member of pointer operator for bucket iterators

* Fix erroneous conversion from node* to value_type* in bucket iterators

Originally caughy by vslashg  from PR https://github.com/boostorg/unordered/pull/220

* Update change log

* Update GHA config to use containers in C++20 builds for clang-14 as it's incompatible with libstdc++-13

* fixed Python installation problem

* tried variation of former fix

* tried another variation of former fix

* tried yet another variation

* editorial

---------

Co-authored-by: Christian Mazakas <christian.mazakas@gmail.com>
2023-11-17 08:51:40 +01:00
joaquintides
1c0e54ee3e updated boost::unordered_[multi]set and boost::unordered_(flat|node)_map benchmarks boost-1.84.0.beta1 2023-11-06 18:20:36 +01:00
joaquintides
329022b23c
removed unnecesary picture tags README.md 2023-10-31 09:38:53 +01:00
joaquintides
47f5be3a3f
typo 2023-10-31 08:59:21 +01:00
joaquintides
de2ac0ce33
revamped README.md 2023-10-29 18:46:51 +01:00
joaquintides
42df4f2749
removed lifting of swap and ==/!= operations 2023-10-22 20:16:05 +02:00
joaquintides
dbe93c765c asserted allocator equality on unordered_node_(map|set)::merge and updated docs 2023-10-21 12:35:59 +02:00
joaquintides
ea4fc5e66d fine-tuned element prefetching in unprotected_bulk_visit 2023-10-18 18:20:22 +02:00
Peter Dimov
0e19223e5b Replace uses of boost::enable_if_t in deduction guides with std::enable_if_t 2023-10-12 13:13:56 +03:00
joaquintides
8ee48fe909
Feature/bulk visit (#217) 2023-10-11 12:50:28 +02:00
joaquintides
ef0b3a0cd8
fixed #201 2023-10-04 17:38:33 +02:00
Christian Mazakas
44b669a71c
Merge pull request #215 from cmazakas/cxx03_deprecation
cxx03 deprecation
2023-09-29 14:59:59 -07:00
Christian Mazakas
554ce65a69 Remove unnecessary forced inlining of bool conversion 2023-09-29 10:52:34 -07:00
Christian Mazakas
c37d9a3bf1 Clean up tests to properly use boost::unordered::piecewise_construct and ensure it's a humble alias for its std counterpart 2023-09-29 08:29:06 -07:00
Christian Mazakas
4fcc6a9cab Manually implement explicit boolean conversion, removing header dependency on Core's polyfill 2023-09-29 08:03:49 -07:00
Christian Mazakas
0d61746fa3 Remove unnecessary requires_cxx11 header 2023-09-29 08:03:11 -07:00
Christian Mazakas
20559cbe5c Remove extraneous whitespace introduced by a clang-format bug 2023-09-29 07:44:52 -07:00
Christian Mazakas
6728ffcf6d Cleanup polyfilled type traits helpers to derive from integral constant 2023-09-29 07:42:58 -07:00
Christian Mazakas
9f5f8b1b48 Update maintainers list in libraries.json 2023-09-28 21:27:46 -07:00
Christian Mazakas
aedebff4e1 Remove extraneous header include of Core's addressof impl 2023-09-28 21:27:46 -07:00
Christian Mazakas
47fa9cd17e Pull triviality type traits into internal type_traits header 2023-09-28 21:27:46 -07:00
Christian Mazakas
a0e1bc295a Update libraries.json 2023-09-28 12:54:51 -07:00
Christian Mazakas
f5bd5bc3d0 Cleanup default-constructiblity check for gcc-4 2023-09-28 12:52:13 -07:00
Christian Mazakas
630031706b Remove project test requirements and remove problematic CI entries 2023-09-28 09:51:47 -07:00
Christian Mazakas
9bc7876583 Update foa to be gcc-4.8 compliant 2023-09-28 08:31:14 -07:00
Christian Mazakas
b482890453 Update testing requirements to re-enable gcc-4.8 and above 2023-09-28 08:27:12 -07:00
Christian Mazakas
bc764d34cf Remove extraneous workarounds for gcc-4 in foa core header 2023-09-27 13:03:15 -07:00
Christian Mazakas
a9da328e1d Add missing copyright to static_assert() header 2023-09-27 13:03:15 -07:00