Commit Graph

2891 Commits

Author SHA1 Message Date
Braden Ganetsky
1b0037135c Add concurrent_node containers to the GDB pretty-printer script 2024-08-25 13:01:49 -05:00
joaquintides
f734e399e3 Feature/concurrent node containers (#271)
* added concurrent node containers

* removed spurious typename

* added missing includes

* avoided unused param warning

* worked around Clang bug

* s/{}/() to work around GCC4.8 problems with aggregate initialization

* used /bigobj for cfoa/visit_tests.cpp

* suppressed localized maybe-uninitialized warnings

* fixed comments

* added /bigobj to cfoa/insert_tests.cpp

* instrumented double exact comparison to spot a spurious error

* fixed pedantic error

* refactored byte_span machinery

* compromised on sub-epsilon equality for doubles that should be identical

* documented boost::concurrent_node_(map|set)

* added concurrent_node_set

* added missing AlternativeType

* tested empty node insertion

* tested node_handle allocator management

* added nonassignable_allocator and node_handle_allocator_swap_tests

* fixed warning disabling

* silenced spurious GCC warning

* broadened scope of previous pragma

* broadened even more

* worked around spurious constexpr-related msvc-14.0 bug
https://godbolt.org/z/v78545Ebf

* added workaround back

* replaced previous workaround with built-in one

* added workaround back on top of built-in solution (which doesn't work 100% of the time)
2024-08-25 18:34:58 +02:00
Braden Ganetsky
35bdabf259 Fix typo in docs 2024-08-23 00:03:49 -05:00
Braden Ganetsky
1ebe692957 Merge pull request #274 from k3DW/gdb
Write GDB pretty-printers for all containers and iterators
2024-08-22 23:45:23 -05:00
Braden Ganetsky
111a503195 Generate inline assembly header file for automatic GDB pretty-printer script inclusion 2024-08-22 18:56:24 -05:00
Braden Ganetsky
5206ac46a3 Output the open-addressing containers' stats through a GDB xmethod 2024-08-17 14:37:06 -05:00
Braden Ganetsky
0bca47c690 Write docs for GDB pretty-printers 2024-08-17 14:37:05 -05:00
Braden Ganetsky
7f9aa8505f Fix containers of reference type 2024-08-17 14:37:05 -05:00
Braden Ganetsky
ae364ea311 Add fancy pointer support to GDB pretty-printers 2024-08-17 14:37:05 -05:00
Braden Ganetsky
f415d17e58 Write GDB pretty-printers for FOA containers, without fancy pointers 2024-08-17 14:37:05 -05:00
Braden Ganetsky
10fd6c8647 Write GDB pretty-printers for FCA containers, without fancy pointers 2024-08-17 14:37:05 -05:00
Braden Ganetsky
45e50f6cd2 Use references in test file, so we can check the debugger display without dereferencing the container 2024-08-17 14:37:05 -05:00
Braden Ganetsky
600dd0a8e2 Rename 'natvis_tests.cpp' to 'debuggability/visualization_tests.cpp', to be used with other kinds of visualizations 2024-08-17 14:37:05 -05:00
Braden Ganetsky
a39cf60e93 Merge pull request #269 from k3DW/191
static_assert on the constructibility of the containers' types
2024-08-08 11:57:22 -05:00
Braden Ganetsky
a14b159665 Add missing calls to as_const(), otherwise we may call a 'T(T&)' constructor instead of the intended 'T(T const&)' 2024-08-07 16:15:36 -05:00
Braden Ganetsky
793fad5620 Run clang-format on the 'types' files 2024-08-07 16:09:15 -05:00
Braden Ganetsky
c117f4448f static_assert on the constructibility of the containers' types 2024-08-07 16:09:15 -05:00
Braden Ganetsky
65f3ea60dd Use as_const to remove any possibility of use-after-move (#272) 2024-08-06 15:48:13 +02:00
Braden Ganetsky
cd4c1f3713 Fix Boost.Config includes in natvis_tests.cpp (#268) 2024-07-24 09:05:21 +02:00
joaquintides
1d1f0d306d Feature/nonconst set visit (#265)
* Made some boost::concurrent_flat_set operations exclusive-locked

* unnamed unused args

* fixed PR number

* replaced homemade mechanism with boost::compat::latch
2024-07-16 19:50:08 +02:00
Braden Ganetsky
7ddd562532 Implement natvis for fancy pointers (#262)
* Add file for manual natvis testing

* Equip natvis file to allow fancy pointers

* Update docs

* [skip ci] add links to natvis docs
2024-07-15 19:42:28 +02:00
Dmitry
3ad8ac4c34 fix asan and tsan jobs on Drone (#264) 2024-07-15 12:38:32 +02:00
joaquintides
ac1a2b4d23 fixed syntax error 2024-07-14 16:43:04 +02:00
joaquintides
e354fb432b configured ASAN/TSAN jobs as privileged 2024-07-14 16:41:21 +02:00
joaquintides
d61719a196 [skip ci] updated benchmark plots boost-1.86.0.beta1 boost-1.86.0 2024-06-26 09:13:54 +02:00
joaquintides
e3818afd45 test interprocess concurrency (#258)
* added cfoa_interprocess_concurrency_tests

* avoided C++14 digit separators

* stopped using exit codes to pass numerical info to parent

* Reorder includes to make msvc-14.0 happy

* made cumulative_stats interprocess concurrency safe

* disabled interprocess_concurrency_tests for Clang 3.5-8
(Boost.Process compile error)

* made test names shorter for the benefit of MINGW32

---------

Co-authored-by: Peter Dimov <pdimov@gmail.com>
2024-06-22 09:13:30 +02:00
joaquintides
a166a56401 dropped macos-11 and included macos-14 (#254)
* dropped macos-11 and included macos-14

* enabled CI for this branch

* disabled CI for this branch (was for testing purposes)
2024-06-11 10:00:20 +02:00
joaquintides
3c53fe5db9 reverted prior 2024-06-10 20:38:10 +02:00
joaquintides
cfa3cb2d1f enabled CI for this branch 2024-06-10 20:10:01 +02:00
joaquintides
cffd0a413e added CODECOV_TOKEN (#253)
* added CODECOV_TOKEN

* added missing newline
2024-06-08 18:50:31 +02:00
joaquintides
8b40aef85f Merge pull request #252 from k3DW/feature/251
Fix 'invalid argument' to boost::interprocess::shared_memory_object
2024-06-08 11:17:41 +02:00
Braden Ganetsky
9995c9beb0 Fix 'invalid argument' to boost::interprocess::shared_memory_object 2024-06-06 23:05:43 -05:00
joaquintides
5827bf2574 gotten rid of redundant base1, base2 and base3 2024-06-03 18:53:24 +02:00
joaquintides
a2f760f320 Merge pull request #249 from boostorg/feature/natvis
Implement natvis visualizations
2024-06-02 20:00:09 +02:00
Braden Ganetsky
39d86cb896 Display foa stats in natvis if applicable 2024-06-02 11:27:15 -05:00
Braden Ganetsky
317d4aa060 Write release notes and documentation for natvis 2024-06-01 09:26:38 -05:00
Braden Ganetsky
901f0a29b8 Write natvis for foa iterators 2024-06-01 09:26:38 -05:00
Braden Ganetsky
0a66c687fd Write natvis for foa and cfoa containers 2024-06-01 09:26:37 -05:00
Braden Ganetsky
763a862928 Write natvis for foa and cfoa helpers 2024-05-31 23:51:31 -05:00
Braden Ganetsky
27ead86b36 Write natvis for fca iterators 2024-05-31 23:51:31 -05:00
Braden Ganetsky
485101db9b Write natvis for fca containers 2024-05-31 23:51:30 -05:00
Braden Ganetsky
29521c3a77 Create natvis file and update CMakeLists.txt 2024-05-31 16:50:57 -05:00
joaquintides
be1f493a6e Merge pull request #250 from boostorg/feature/is_avalanching_trait_update
Feature/is_avalanching_trait_update
2024-05-30 20:04:19 +02:00
joaquintides
401b06663f forced a compile error when Hash::is_avalanching is not a type 2024-05-30 09:11:06 +02:00
joaquintides
7e9032c703 s/UB/ill-formed 2024-05-30 09:08:07 +02:00
joaquintides
f77bdb9b67 updated is_avalanching trait protocol 2024-05-29 19:51:32 +02:00
joaquintides
6745d67d62 typo 2024-05-09 09:12:28 +02:00
joaquintides
87e0e52cf7 Merge pull request #247 from boostorg/feature/stats
Feature/stats
2024-05-08 17:19:12 +02:00
joaquintides
475acdc351 typo 2024-05-08 11:43:11 +02:00
joaquintides
93f33c336b typos/editorial 2024-05-08 11:11:09 +02:00