Advertisement
Guest User

Untitled

a guest
Oct 29th, 2022
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 307.68 KB | None | 0 0
  1. [1/2635] Building CXX object libs/core/algorithms/CMakeFiles/hpx_algorithms.dir/src/task_group.cpp.o
  2. [2/2635] Building CXX object libs/core/affinity/tests/unit/CMakeFiles/parse_affinity_options_test.dir/parse_affinity_options.cpp.o
  3. [3/2635] Building CXX object libs/core/algorithms/tests/unit/algorithms/CMakeFiles/foreach_sender_test.dir/foreach_sender.cpp.o
  4. FAILED: libs/core/algorithms/tests/unit/algorithms/CMakeFiles/foreach_sender_test.dir/foreach_sender.cpp.o
  5. /opt/apps/gcc/12.2.0/bin/g++ -DHPX_APPLICATION_EXPORTS -DHPX_APPLICATION_NAME=foreach_sender_test -DHPX_APPLICATION_NAME_DEFAULT=foreach_sender_test -DHPX_APPLICATION_STRING=\"foreach_sender_test\" -DHPX_PREFIX=\"/home/satacker/hpx/build\" -DHPX_PREFIX_DEFAULT=\"/usr/local\" -DNDEBUG -D_GNU_SOURCE -I../ -I. -I../libs/full/actions/include -Ilibs/full/actions/include -Ilibs/full/actions/include_compatibility -I../libs/full/actions_base/include -Ilibs/full/actions_base/include -Ilibs/full/actions_base/include_compatibility -I../libs/full/agas/include -Ilibs/full/agas/include -Ilibs/full/agas/include_compatibility -I../libs/full/agas_base/include -Ilibs/full/agas_base/include -Ilibs/full/agas_base/include_compatibility -I../libs/full/async_colocated/include -Ilibs/full/async_colocated/include -Ilibs/full/async_colocated/include_compatibility -I../libs/full/async_distributed/include -Ilibs/full/async_distributed/include -Ilibs/full/async_distributed/include_compatibility -I../libs/full/checkpoint/include -Ilibs/full/checkpoint/include -Ilibs/full/checkpoint/include_compatibility -I../libs/full/checkpoint_base/include -Ilibs/full/checkpoint_base/include -I../libs/full/collectives/include -Ilibs/full/collectives/include -Ilibs/full/collectives/include_compatibility -I../libs/full/command_line_handling/include -Ilibs/full/command_line_handling/include -Ilibs/full/command_line_handling/include_compatibility -I../libs/full/components/include -Ilibs/full/components/include -Ilibs/full/components/include_compatibility -I../libs/full/components_base/include -Ilibs/full/components_base/include -Ilibs/full/components_base/include_compatibility -I../libs/full/compute/include -Ilibs/full/compute/include -Ilibs/full/compute/include_compatibility -I../libs/full/distribution_policies/include -Ilibs/full/distribution_policies/include -Ilibs/full/distribution_policies/include_compatibility -I../libs/full/executors_distributed/include -Ilibs/full/executors_distributed/include -Ilibs/full/executors_distributed/include_compatibility -I../libs/full/include/include -Ilibs/full/include/include -I../libs/full/init_runtime/include -Ilibs/full/init_runtime/include -I../libs/full/lcos_distributed/include -Ilibs/full/lcos_distributed/include -Ilibs/full/lcos_distributed/include_compatibility -I../libs/full/naming/include -Ilibs/full/naming/include -Ilibs/full/naming/include_compatibility -I../libs/full/naming_base/include -Ilibs/full/naming_base/include -Ilibs/full/naming_base/include_compatibility -I../libs/full/parcelport_tcp/include -Ilibs/full/parcelport_tcp/include -I../libs/full/parcelset/include -Ilibs/full/parcelset/include -Ilibs/full/parcelset/include_compatibility -I../libs/full/parcelset_base/include -Ilibs/full/parcelset_base/include -Ilibs/full/parcelset_base/include_compatibility -I../libs/full/performance_counters/include -Ilibs/full/performance_counters/include -I../libs/full/plugin_factories/include -Ilibs/full/plugin_factories/include -Ilibs/full/plugin_factories/include_compatibility -I../libs/full/resiliency_distributed/include -Ilibs/full/resiliency_distributed/include -I../libs/full/runtime_components/include -Ilibs/full/runtime_components/include -Ilibs/full/runtime_components/include_compatibility -I../libs/full/runtime_distributed/include -Ilibs/full/runtime_distributed/include -Ilibs/full/runtime_distributed/include_compatibility -I../libs/full/segmented_algorithms/include -Ilibs/full/segmented_algorithms/include -Ilibs/full/segmented_algorithms/include_compatibility -I../libs/full/statistics/include -Ilibs/full/statistics/include -Ilibs/full/statistics/include_compatibility -I../libs/core/affinity/include -Ilibs/core/affinity/include -Ilibs/core/affinity/include_compatibility -I../libs/core/algorithms/include -Ilibs/core/algorithms/include -Ilibs/core/algorithms/include_compatibility -I../libs/core/allocator_support/include -Ilibs/core/allocator_support/include -Ilibs/core/allocator_support/include_compatibility -I../libs/core/asio/include -Ilibs/core/asio/include -Ilibs/core/asio/include_compatibility -I../libs/core/assertion/include -Ilibs/core/assertion/include -Ilibs/core/assertion/include_compatibility -I../libs/core/async_base/include -Ilibs/core/async_base/include -Ilibs/core/async_base/include_compatibility -I../libs/core/async_combinators/include -Ilibs/core/async_combinators/include -Ilibs/core/async_combinators/include_compatibility -I../libs/core/async_local/include -Ilibs/core/async_local/include -I../libs/core/batch_environments/include -Ilibs/core/batch_environments/include -Ilibs/core/batch_environments/include_compatibility -I../libs/core/cache/include -Ilibs/core/cache/include -Ilibs/core/cache/include_compatibility -I../libs/core/command_line_handling_local/include -Ilibs/core/command_line_handling_local/include -I../libs/core/compute_local/include -Ilibs/core/compute_local/include -Ilibs/core/compute_local/include_compatibility -I../libs/core/concepts/include -Ilibs/core/concepts/include -Ilibs/core/concepts/include_compatibility -I../libs/core/concurrency/include -Ilibs/core/concurrency/include -Ilibs/core/concurrency/include_compatibility -I../libs/core/config/include -Ilibs/core/config/include -I../libs/core/config_registry/include -Ilibs/core/config_registry/include -I../libs/core/coroutines/include -Ilibs/core/coroutines/include -Ilibs/core/coroutines/include_compatibility -I../libs/core/datastructures/include -Ilibs/core/datastructures/include -Ilibs/core/datastructures/include_compatibility -I../libs/core/debugging/include -Ilibs/core/debugging/include -Ilibs/core/debugging/include_compatibility -I../libs/core/errors/include -Ilibs/core/errors/include -Ilibs/core/errors/include_compatibility -I../libs/core/execution/include -Ilibs/core/execution/include -Ilibs/core/execution/include_compatibility -I../libs/core/execution_base/include -Ilibs/core/execution_base/include -Ilibs/core/execution_base/include_compatibility -I../libs/core/executors/include -Ilibs/core/executors/include -Ilibs/core/executors/include_compatibility -I../libs/core/filesystem/include -Ilibs/core/filesystem/include -Ilibs/core/filesystem/include_compatibility -I../libs/core/format/include -Ilibs/core/format/include -Ilibs/core/format/include_compatibility -I../libs/core/functional/include -Ilibs/core/functional/include -Ilibs/core/functional/include_compatibility -I../libs/core/futures/include -Ilibs/core/futures/include -Ilibs/core/futures/include_compatibility -I../libs/core/hardware/include -Ilibs/core/hardware/include -Ilibs/core/hardware/include_compatibility -I../libs/core/hashing/include -Ilibs/core/hashing/include -Ilibs/core/hashing/include_compatibility -I../libs/core/include_local/include -Ilibs/core/include_local/include -I../libs/core/ini/include -Ilibs/core/ini/include -I../libs/core/init_runtime_local/include -Ilibs/core/init_runtime_local/include -I../libs/core/io_service/include -Ilibs/core/io_service/include -Ilibs/core/io_service/include_compatibility -I../libs/core/iterator_support/include -Ilibs/core/iterator_support/include -Ilibs/core/iterator_support/include_compatibility -I../libs/core/itt_notify/include -Ilibs/core/itt_notify/include -Ilibs/core/itt_notify/include_compatibility -I../libs/core/lcos_local/include -Ilibs/core/lcos_local/include -Ilibs/core/lcos_local/include_compatibility -I../libs/core/lock_registration/include -Ilibs/core/lock_registration/include -I../libs/core/logging/include -Ilibs/core/logging/include -Ilibs/core/logging/include_compatibility -I../libs/core/memory/include -Ilibs/core/memory/include -Ilibs/core/memory/include_compatibility -I../libs/core/pack_traversal/include -Ilibs/core/pack_traversal/include -Ilibs/core/pack_traversal/include_compatibility -I../libs/core/plugin/include -Ilibs/core/plugin/include -Ilibs/core/plugin/include_compatibility -I../libs/core/prefix/include -Ilibs/core/prefix/include -Ilibs/core/prefix/include_compatibility -I../libs/core/preprocessor/include -Ilibs/core/preprocessor/include -Ilibs/core/preprocessor/include_compatibility -I../libs/core/program_options/include -Ilibs/core/program_options/include -I../libs/core/properties/include -Ilibs/core/properties/include -I../libs/core/resiliency/include -Ilibs/core/resiliency/include -I../libs/core/resource_partitioner/include -Ilibs/core/resource_partitioner/include -Ilibs/core/resource_partitioner/include_compatibility -I../libs/core/runtime_configuration/include -Ilibs/core/runtime_configuration/include -Ilibs/core/runtime_configuration/include_compatibility -I../libs/core/runtime_local/include -Ilibs/core/runtime_local/include -Ilibs/core/runtime_local/include_compatibility -I../libs/core/schedulers/include -Ilibs/core/schedulers/include -Ilibs/core/schedulers/include_compatibility -I../libs/core/serialization/include -Ilibs/core/serialization/include -Ilibs/core/serialization/include_compatibility -I../libs/core/static_reinit/include -Ilibs/core/static_reinit/include -Ilibs/core/static_reinit/include_compatibility -I../libs/core/string_util/include -Ilibs/core/string_util/include -I../libs/core/synchronization/include -Ilibs/core/synchronization/include -Ilibs/core/synchronization/include_compatibility -I../libs/core/tag_invoke/include -Ilibs/core/tag_invoke/include -Ilibs/core/tag_invoke/include_compatibility -I../libs/core/testing/include -Ilibs/core/testing/include -Ilibs/core/testing/include_compatibility -I../libs/core/thread_pool_util/include -Ilibs/core/thread_pool_util/include -I../libs/core/thread_pools/include -Ilibs/core/thread_pools/include -Ilibs/core/thread_pools/include_compatibility -I../libs/core/thread_support/include -Ilibs/core/thread_support/include -Ilibs/core/thread_support/include_compatibility -I../libs/core/threading/include -Ilibs/core/threading/include -Ilibs/core/threading/include_compatibility -I../libs/core/threading_base/include -Ilibs/core/threading_base/include -Ilibs/core/threading_base/include_compatibility -I../libs/core/threadmanager/include -Ilibs/core/threadmanager/include -Ilibs/core/threadmanager/include_compatibility -I../libs/core/timed_execution/include -Ilibs/core/timed_execution/include -Ilibs/core/timed_execution/include_compatibility -I../libs/core/timing/include -Ilibs/core/timing/include -Ilibs/core/timing/include_compatibility -I../libs/core/topology/include -Ilibs/core/topology/include -Ilibs/core/topology/include_compatibility -I../libs/core/type_support/include -Ilibs/core/type_support/include -Ilibs/core/type_support/include_compatibility -I../libs/core/util/include -Ilibs/core/util/include -Ilibs/core/util/include_compatibility -I../libs/core/version/include -Ilibs/core/version/include -I../init/include -I../wrap/include -isystem /opt/apps/gcc12/boost/1.80.0/release -isystem _deps/asio-src/asio/include -O3 -DNDEBUG -pthread -Wall -Wextra -Wpedantic -Wno-strict-aliasing -Wno-sign-promo -Wno-attributes -Wno-cast-align -Wno-interference-size -Wno-noexcept-type -Wformat=2 -Wno-format-nonliteral -Winit-self -Wdouble-promotion -Wcast-qual -Wcast-align -Werror=trampolines -Werror=parentheses -Werror=reorder -Werror=return-type -Werror=sequence-point -Werror=uninitialized -Werror=format -Werror=missing-braces -Werror=sign-compare -fdiagnostics-show-option -Werror=vla -Wno-unused-but-set-parameter -Wno-unused-but-set-variable -Wno-unused-local-typedefs -Wno-maybe-uninitialized -Wno-sync-nand -Wno-delete-non-virtual-dtor -fvisibility=hidden -std=c++2a -MD -MT libs/core/algorithms/tests/unit/algorithms/CMakeFiles/foreach_sender_test.dir/foreach_sender.cpp.o -MF libs/core/algorithms/tests/unit/algorithms/CMakeFiles/foreach_sender_test.dir/foreach_sender.cpp.o.d -o libs/core/algorithms/tests/unit/algorithms/CMakeFiles/foreach_sender_test.dir/foreach_sender.cpp.o -c ../libs/core/algorithms/tests/unit/algorithms/foreach_sender.cpp
  6. In file included from libs/core/execution/include/hpx/modules/execution.hpp:28,
  7. from ../libs/core/include_local/include/hpx/local/execution.hpp:9,
  8. from ../libs/core/algorithms/tests/unit/algorithms/foreach_sender.cpp:7:
  9. ../libs/core/execution/include/hpx/execution/algorithms/sync_wait.hpp: In instantiation of ‘auto hpx::execution::experimental::detail::sync_wait_receiver<Sender, Type>::shared_state::get_value() [with Sender = hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::util::detail::deferred<hpx::parallel::v1::detail::for_each<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::util::pack_c<long unsigned int, 0, 1, 2, 3, 4>, hpx::execution::detail::sequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct<hpx::detail::sync_policy, const hpx::execution::detail::sequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag>(hpx::detail::sync_policy, const hpx::execution::detail::sequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag)::<lambda(std::size_t&)>, hpx::parallel::util::projection_identity> >; hpx::execution::experimental::detail::sync_wait_type Type = hpx::execution::experimental::detail::sync_wait_type::single]’:
  10. ../libs/core/execution/include/hpx/execution/algorithms/sync_wait.hpp:442:35: required from ‘auto hpx::this_thread::experimental::tag_fallback_invoke(sync_wait_t, Sender&&) [with Sender = hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::util::detail::deferred<hpx::parallel::v1::detail::for_each<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::util::pack_c<long unsigned int, 0, 1, 2, 3, 4>, hpx::execution::detail::sequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct<hpx::detail::sync_policy, const hpx::execution::detail::sequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag>(hpx::detail::sync_policy, const hpx::execution::detail::sequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag)::<lambda(std::size_t&)>, hpx::parallel::util::projection_identity> >; int _concept_requires_419 = 42; typename std::enable_if<((_concept_requires_390 == 43) || is_sender_v<Sender, hpx::execution::experimental::detail::sync_wait_receiver_env>), int>::type _concept_check_419 = 0; sync_wait_t = sync_wait_t]’
  11. ../libs/core/tag_invoke/include/hpx/functional/detail/tag_fallback_invoke.hpp:130:52: required by substitution of ‘template<class Tag, class ... Ts> constexpr decltype (hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke(declval<Tag>(), static_cast<decltype(hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t::operator()::ts)&&>(hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t::operator()::ts) ...)) hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t::operator()(Tag, Ts&& ...) const [with Tag = hpx::this_thread::experimental::sync_wait_t; Ts = {hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::util::detail::deferred<hpx::parallel::v1::detail::for_each<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::util::pack_c<long unsigned int, 0, 1, 2, 3, 4>, hpx::execution::detail::sequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct<hpx::detail::sync_policy, const hpx::execution::detail::sequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag>(hpx::detail::sync_policy, const hpx::execution::detail::sequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag)::<lambda(std::size_t&)>, hpx::parallel::util::projection_identity> >}]’
  12. ../libs/core/tag_invoke/include/hpx/functional/invoke_result.hpp:28:17: required by substitution of ‘template<class F, class ... Ts> struct hpx::detail::is_invocable_impl<F(Ts ...), std::void_t<decltype ((typename hpx::util::detail::dispatch_invoke<decltype (declval<F>()), typename std::remove_cv<typename std::remove_reference<decltype (declval<F>())>::type>::type>::type)(declval<F>())((declval<Ts>)()...))> > [with F = const hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t&&; Ts = {hpx::this_thread::experimental::sync_wait_t&&, hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::util::detail::deferred<hpx::parallel::v1::detail::for_each<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::util::pack_c<long unsigned int, 0, 1, 2, 3, 4>, hpx::execution::detail::sequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct<hpx::detail::sync_policy, const hpx::execution::detail::sequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag>(hpx::detail::sync_policy, const hpx::execution::detail::sequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag)::<lambda(std::size_t&)>, hpx::parallel::util::projection_identity> >&&}]’
  13. ../libs/core/tag_invoke/include/hpx/functional/traits/is_invocable.hpp:70:12: required from ‘struct hpx::is_invocable<const hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t, hpx::this_thread::experimental::sync_wait_t, hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::util::detail::deferred<hpx::parallel::v1::detail::for_each<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::util::pack_c<long unsigned int, 0, 1, 2, 3, 4>, hpx::execution::detail::sequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct<hpx::detail::sync_policy, const hpx::execution::detail::sequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag>(hpx::detail::sync_policy, const hpx::execution::detail::sequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag)::<lambda(std::size_t&)>, hpx::parallel::util::projection_identity> >&&>’
  14. ../libs/core/tag_invoke/include/hpx/functional/detail/tag_fallback_invoke.hpp:168:50: required from ‘constexpr const bool hpx::functional::detail::is_tag_fallback_invocable_v<hpx::this_thread::experimental::sync_wait_t, hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::util::detail::deferred<hpx::parallel::v1::detail::for_each<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::util::pack_c<long unsigned int, 0, 1, 2, 3, 4>, hpx::execution::detail::sequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct<hpx::detail::sync_policy, const hpx::execution::detail::sequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag>(hpx::detail::sync_policy, const hpx::execution::detail::sequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag)::<lambda(std::size_t&)>, hpx::parallel::util::projection_identity> >&&>’
  15. ../libs/core/tag_invoke/include/hpx/functional/detail/tag_priority_invoke.hpp:277:57: [ skipping 12 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
  16. ../libs/core/tag_invoke/include/hpx/functional/invoke_result.hpp:38:12: required from ‘struct hpx::util::invoke_result<const hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t, hpx::for_each_t, hpx::execution::detail::sequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>&&, test_for_each_explicit_sender_direct<hpx::detail::sync_policy, const hpx::execution::detail::sequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag>(hpx::detail::sync_policy, const hpx::execution::detail::sequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&>’
  17. ../libs/core/tag_invoke/include/hpx/functional/detail/tag_fallback_invoke.hpp:217:11: required by substitution of ‘template<class Tag, class ... Args> using tag_fallback_invoke_result_t = typename hpx::functional::detail::tag_fallback_invoke_result<Tag, Args ...>::type [with Tag = hpx::for_each_t; Args = {hpx::execution::detail::sequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>&&, test_for_each_explicit_sender_direct<hpx::detail::sync_policy, const hpx::execution::detail::sequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag>(hpx::detail::sync_policy, const hpx::execution::detail::sequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&}]’
  18. ../libs/core/tag_invoke/include/hpx/functional/detail/tag_fallback_invoke.hpp:281:60: required by substitution of ‘template<class ... Args, class> constexpr hpx::functional::detail::tag_fallback_invoke_result_t<hpx::for_each_t, Args&& ...> hpx::functional::detail::tag_base_ns::tag_fallback<hpx::for_each_t, hpx::meta::constant<std::integral_constant<bool, true> > >::operator()(Args&& ...) const [with Args = {hpx::execution::detail::sequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct<hpx::detail::sync_policy, const hpx::execution::detail::sequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag>(hpx::detail::sync_policy, const hpx::execution::detail::sequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&}; <template-parameter-1-2> = void]’
  19. ../libs/core/algorithms/tests/unit/algorithms/foreach_sender.cpp:42:32: required from ‘void test_for_each_explicit_sender_direct(Policy, ExPolicy&&, IteratorTag) [with Policy = hpx::detail::sync_policy; ExPolicy = const hpx::execution::detail::sequenced_policy_shim<hpx::execution::sequenced_executor>&; IteratorTag = std::random_access_iterator_tag]’
  20. ../libs/core/algorithms/tests/unit/algorithms/foreach_sender.cpp:130:41: required from ‘void test_for_each_sender_direct() [with IteratorTag = std::random_access_iterator_tag]’
  21. ../libs/core/algorithms/tests/unit/algorithms/foreach_sender.cpp:163:65: required from here
  22. ../libs/core/execution/include/hpx/execution/algorithms/sync_wait.hpp:166:77: error: call of overloaded ‘get<0>(std::variant<hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >)’ is ambiguous
  23. 166 | return hpx::optional<single_result_type>(hpx::get<0>(
  24. | ~~~~~~~~~~~^
  25. 167 | hpx::get<result_type>(HPX_MOVE(value))));
  26. | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  27. In file included from ../libs/core/datastructures/include/hpx/datastructures/variant_helper.hpp:16,
  28. from ../libs/core/datastructures/include/hpx/datastructures/variant.hpp:12,
  29. from ../libs/core/execution_base/include/hpx/execution_base/coroutine_utils.hpp:14,
  30. from ../libs/core/execution_base/include/hpx/execution_base/sender.hpp:11,
  31. from ../libs/core/execution_base/include/hpx/execution_base/completion_scheduler.hpp:14,
  32. from ../libs/core/execution/include/hpx/execution/algorithms/detail/partial_algorithm.hpp:12,
  33. from ../libs/core/execution/include/hpx/execution/algorithms/as_sender.hpp:13,
  34. from libs/core/execution/include/hpx/modules/execution.hpp:14:
  35. /opt/apps/gcc/12.2.0/include/c++/12.2.0/variant:1717:5: note: candidate: ‘constexpr std::variant_alternative_t<_Np, std::variant<_Types ...> >&& std::get(const variant<_Types ...>&&) [with long unsigned int _Np = 0; _Types = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >}; variant_alternative_t<_Np, variant<_Types ...> > = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >]’
  36. 1717 | get(const variant<_Types...>&& __v)
  37. | ^~~
  38. /opt/apps/gcc/12.2.0/include/c++/12.2.0/variant:1706:5: note: candidate: ‘constexpr std::variant_alternative_t<_Np, std::variant<_Types ...> >& std::get(const variant<_Types ...>&) [with long unsigned int _Np = 0; _Types = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >}; variant_alternative_t<_Np, variant<_Types ...> > = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >]’
  39. 1706 | get(const variant<_Types...>& __v)
  40. | ^~~
  41. /opt/apps/gcc/12.2.0/include/c++/12.2.0/variant:1695:5: note: candidate: ‘constexpr std::variant_alternative_t<_Np, std::variant<_Types ...> >&& std::get(variant<_Types ...>&&) [with long unsigned int _Np = 0; _Types = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >}; variant_alternative_t<_Np, variant<_Types ...> > = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >]’
  42. 1695 | get(variant<_Types...>&& __v)
  43. | ^~~
  44. ../libs/core/datastructures/include/hpx/datastructures/variant_helper.hpp:51:13: note: candidate: ‘constexpr const typename hpx::util::at_index<I, Ts>::type&& hpx::adl_barrier::get(const std::variant<_Types ...>&&) [with long unsigned int I = 0; Ts = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >}; typename hpx::util::at_index<I, Ts>::type = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >]’
  45. 51 | get(std::variant<Ts...> const&& var) noexcept
  46. | ^~~
  47. ../libs/core/datastructures/include/hpx/datastructures/variant_helper.hpp:43:13: note: candidate: ‘constexpr typename hpx::util::at_index<I, Ts>::type&& hpx::adl_barrier::get(std::variant<_Types ...>&&) [with long unsigned int I = 0; Ts = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >}; typename hpx::util::at_index<I, Ts>::type = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >]’
  48. 43 | get(std::variant<Ts...>&& var) noexcept
  49. | ^~~
  50. ../libs/core/datastructures/include/hpx/datastructures/variant_helper.hpp:35:13: note: candidate: ‘constexpr const typename hpx::util::at_index<I, Ts>::type& hpx::adl_barrier::get(const std::variant<_Types ...>&) [with long unsigned int I = 0; Ts = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >}; typename hpx::util::at_index<I, Ts>::type = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >]’
  51. 35 | get(std::variant<Ts...> const& var) noexcept
  52. | ^~~
  53. ../libs/core/execution/include/hpx/execution/algorithms/sync_wait.hpp: In instantiation of ‘auto hpx::execution::experimental::detail::sync_wait_receiver<Sender, Type>::shared_state::get_value() [with Sender = hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::util::detail::deferred<hpx::parallel::v1::detail::for_each<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::util::pack_c<long unsigned int, 0, 1, 2, 3, 4>, hpx::execution::detail::unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct<hpx::detail::sync_policy, const hpx::execution::detail::unsequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag>(hpx::detail::sync_policy, const hpx::execution::detail::unsequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag)::<lambda(std::size_t&)>, hpx::parallel::util::projection_identity> >; hpx::execution::experimental::detail::sync_wait_type Type = hpx::execution::experimental::detail::sync_wait_type::single]’:
  54. ../libs/core/execution/include/hpx/execution/algorithms/sync_wait.hpp:442:35: required from ‘auto hpx::this_thread::experimental::tag_fallback_invoke(sync_wait_t, Sender&&) [with Sender = hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::util::detail::deferred<hpx::parallel::v1::detail::for_each<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::util::pack_c<long unsigned int, 0, 1, 2, 3, 4>, hpx::execution::detail::unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct<hpx::detail::sync_policy, const hpx::execution::detail::unsequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag>(hpx::detail::sync_policy, const hpx::execution::detail::unsequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag)::<lambda(std::size_t&)>, hpx::parallel::util::projection_identity> >; int _concept_requires_419 = 42; typename std::enable_if<((_concept_requires_390 == 43) || is_sender_v<Sender, hpx::execution::experimental::detail::sync_wait_receiver_env>), int>::type _concept_check_419 = 0; sync_wait_t = sync_wait_t]’
  55. ../libs/core/tag_invoke/include/hpx/functional/detail/tag_fallback_invoke.hpp:130:52: required by substitution of ‘template<class Tag, class ... Ts> constexpr decltype (hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke(declval<Tag>(), static_cast<decltype(hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t::operator()::ts)&&>(hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t::operator()::ts) ...)) hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t::operator()(Tag, Ts&& ...) const [with Tag = hpx::this_thread::experimental::sync_wait_t; Ts = {hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::util::detail::deferred<hpx::parallel::v1::detail::for_each<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::util::pack_c<long unsigned int, 0, 1, 2, 3, 4>, hpx::execution::detail::unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct<hpx::detail::sync_policy, const hpx::execution::detail::unsequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag>(hpx::detail::sync_policy, const hpx::execution::detail::unsequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag)::<lambda(std::size_t&)>, hpx::parallel::util::projection_identity> >}]’
  56. ../libs/core/tag_invoke/include/hpx/functional/invoke_result.hpp:28:17: required by substitution of ‘template<class F, class ... Ts> struct hpx::detail::is_invocable_impl<F(Ts ...), std::void_t<decltype ((typename hpx::util::detail::dispatch_invoke<decltype (declval<F>()), typename std::remove_cv<typename std::remove_reference<decltype (declval<F>())>::type>::type>::type)(declval<F>())((declval<Ts>)()...))> > [with F = const hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t&&; Ts = {hpx::this_thread::experimental::sync_wait_t&&, hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::util::detail::deferred<hpx::parallel::v1::detail::for_each<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::util::pack_c<long unsigned int, 0, 1, 2, 3, 4>, hpx::execution::detail::unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct<hpx::detail::sync_policy, const hpx::execution::detail::unsequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag>(hpx::detail::sync_policy, const hpx::execution::detail::unsequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag)::<lambda(std::size_t&)>, hpx::parallel::util::projection_identity> >&&}]’
  57. ../libs/core/tag_invoke/include/hpx/functional/traits/is_invocable.hpp:70:12: required from ‘struct hpx::is_invocable<const hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t, hpx::this_thread::experimental::sync_wait_t, hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::util::detail::deferred<hpx::parallel::v1::detail::for_each<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::util::pack_c<long unsigned int, 0, 1, 2, 3, 4>, hpx::execution::detail::unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct<hpx::detail::sync_policy, const hpx::execution::detail::unsequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag>(hpx::detail::sync_policy, const hpx::execution::detail::unsequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag)::<lambda(std::size_t&)>, hpx::parallel::util::projection_identity> >&&>’
  58. ../libs/core/tag_invoke/include/hpx/functional/detail/tag_fallback_invoke.hpp:168:50: required from ‘constexpr const bool hpx::functional::detail::is_tag_fallback_invocable_v<hpx::this_thread::experimental::sync_wait_t, hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::util::detail::deferred<hpx::parallel::v1::detail::for_each<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::util::pack_c<long unsigned int, 0, 1, 2, 3, 4>, hpx::execution::detail::unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct<hpx::detail::sync_policy, const hpx::execution::detail::unsequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag>(hpx::detail::sync_policy, const hpx::execution::detail::unsequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag)::<lambda(std::size_t&)>, hpx::parallel::util::projection_identity> >&&>’
  59. ../libs/core/tag_invoke/include/hpx/functional/detail/tag_priority_invoke.hpp:277:57: [ skipping 12 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
  60. ../libs/core/tag_invoke/include/hpx/functional/invoke_result.hpp:38:12: required from ‘struct hpx::util::invoke_result<const hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t, hpx::for_each_t, hpx::execution::detail::unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>&&, test_for_each_explicit_sender_direct<hpx::detail::sync_policy, const hpx::execution::detail::unsequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag>(hpx::detail::sync_policy, const hpx::execution::detail::unsequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&>’
  61. ../libs/core/tag_invoke/include/hpx/functional/detail/tag_fallback_invoke.hpp:217:11: required by substitution of ‘template<class Tag, class ... Args> using tag_fallback_invoke_result_t = typename hpx::functional::detail::tag_fallback_invoke_result<Tag, Args ...>::type [with Tag = hpx::for_each_t; Args = {hpx::execution::detail::unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>&&, test_for_each_explicit_sender_direct<hpx::detail::sync_policy, const hpx::execution::detail::unsequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag>(hpx::detail::sync_policy, const hpx::execution::detail::unsequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&}]’
  62. ../libs/core/tag_invoke/include/hpx/functional/detail/tag_fallback_invoke.hpp:281:60: required by substitution of ‘template<class ... Args, class> constexpr hpx::functional::detail::tag_fallback_invoke_result_t<hpx::for_each_t, Args&& ...> hpx::functional::detail::tag_base_ns::tag_fallback<hpx::for_each_t, hpx::meta::constant<std::integral_constant<bool, true> > >::operator()(Args&& ...) const [with Args = {hpx::execution::detail::unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct<hpx::detail::sync_policy, const hpx::execution::detail::unsequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag>(hpx::detail::sync_policy, const hpx::execution::detail::unsequenced_policy_shim<hpx::execution::sequenced_executor>&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&}; <template-parameter-1-2> = void]’
  63. ../libs/core/algorithms/tests/unit/algorithms/foreach_sender.cpp:42:32: required from ‘void test_for_each_explicit_sender_direct(Policy, ExPolicy&&, IteratorTag) [with Policy = hpx::detail::sync_policy; ExPolicy = const hpx::execution::detail::unsequenced_policy_shim<hpx::execution::sequenced_executor>&; IteratorTag = std::random_access_iterator_tag]’
  64. ../libs/core/algorithms/tests/unit/algorithms/foreach_sender.cpp:131:41: required from ‘void test_for_each_sender_direct() [with IteratorTag = std::random_access_iterator_tag]’
  65. ../libs/core/algorithms/tests/unit/algorithms/foreach_sender.cpp:163:65: required from here
  66. ../libs/core/execution/include/hpx/execution/algorithms/sync_wait.hpp:166:77: error: call of overloaded ‘get<0>(std::variant<hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >)’ is ambiguous
  67. 166 | return hpx::optional<single_result_type>(hpx::get<0>(
  68. | ~~~~~~~~~~~^
  69. 167 | hpx::get<result_type>(HPX_MOVE(value))));
  70. | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  71. /opt/apps/gcc/12.2.0/include/c++/12.2.0/variant:1717:5: note: candidate: ‘constexpr std::variant_alternative_t<_Np, std::variant<_Types ...> >&& std::get(const variant<_Types ...>&&) [with long unsigned int _Np = 0; _Types = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >}; variant_alternative_t<_Np, variant<_Types ...> > = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >]’
  72. 1717 | get(const variant<_Types...>&& __v)
  73. | ^~~
  74. /opt/apps/gcc/12.2.0/include/c++/12.2.0/variant:1706:5: note: candidate: ‘constexpr std::variant_alternative_t<_Np, std::variant<_Types ...> >& std::get(const variant<_Types ...>&) [with long unsigned int _Np = 0; _Types = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >}; variant_alternative_t<_Np, variant<_Types ...> > = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >]’
  75. 1706 | get(const variant<_Types...>& __v)
  76. | ^~~
  77. /opt/apps/gcc/12.2.0/include/c++/12.2.0/variant:1695:5: note: candidate: ‘constexpr std::variant_alternative_t<_Np, std::variant<_Types ...> >&& std::get(variant<_Types ...>&&) [with long unsigned int _Np = 0; _Types = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >}; variant_alternative_t<_Np, variant<_Types ...> > = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >]’
  78. 1695 | get(variant<_Types...>&& __v)
  79. | ^~~
  80. ../libs/core/datastructures/include/hpx/datastructures/variant_helper.hpp:51:13: note: candidate: ‘constexpr const typename hpx::util::at_index<I, Ts>::type&& hpx::adl_barrier::get(const std::variant<_Types ...>&&) [with long unsigned int I = 0; Ts = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >}; typename hpx::util::at_index<I, Ts>::type = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >]’
  81. 51 | get(std::variant<Ts...> const&& var) noexcept
  82. | ^~~
  83. ../libs/core/datastructures/include/hpx/datastructures/variant_helper.hpp:43:13: note: candidate: ‘constexpr typename hpx::util::at_index<I, Ts>::type&& hpx::adl_barrier::get(std::variant<_Types ...>&&) [with long unsigned int I = 0; Ts = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >}; typename hpx::util::at_index<I, Ts>::type = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >]’
  84. 43 | get(std::variant<Ts...>&& var) noexcept
  85. | ^~~
  86. ../libs/core/datastructures/include/hpx/datastructures/variant_helper.hpp:35:13: note: candidate: ‘constexpr const typename hpx::util::at_index<I, Ts>::type& hpx::adl_barrier::get(const std::variant<_Types ...>&) [with long unsigned int I = 0; Ts = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >}; typename hpx::util::at_index<I, Ts>::type = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >]’
  87. 35 | get(std::variant<Ts...> const& var) noexcept
  88. | ^~~
  89. ../libs/core/execution/include/hpx/execution/algorithms/sync_wait.hpp: In instantiation of ‘auto hpx::execution::experimental::detail::sync_wait_receiver<Sender, Type>::shared_state::get_value() [with Sender = hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, hpx::parallel::util::detail::foreach_static_partitioner<hpx::execution::detail::parallel_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, void>::reduce<hpx::parallel::util::projection_identity, hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >(hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >&&, hpx::parallel::util::projection_identity&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>)::<lambda()> >; hpx::execution::experimental::detail::sync_wait_type Type = hpx::execution::experimental::detail::sync_wait_type::single]’:
  90. ../libs/core/execution/include/hpx/execution/algorithms/sync_wait.hpp:442:35: required from ‘auto hpx::this_thread::experimental::tag_fallback_invoke(sync_wait_t, Sender&&) [with Sender = hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, hpx::parallel::util::detail::foreach_static_partitioner<hpx::execution::detail::parallel_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, void>::reduce<hpx::parallel::util::projection_identity, hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >(hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >&&, hpx::parallel::util::projection_identity&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>)::<lambda()> >; int _concept_requires_419 = 42; typename std::enable_if<((_concept_requires_390 == 43) || is_sender_v<Sender, hpx::execution::experimental::detail::sync_wait_receiver_env>), int>::type _concept_check_419 = 0; sync_wait_t = sync_wait_t]’
  91. ../libs/core/tag_invoke/include/hpx/functional/detail/tag_fallback_invoke.hpp:130:52: required by substitution of ‘template<class Tag, class ... Ts> constexpr decltype (hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke(declval<Tag>(), static_cast<decltype(hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t::operator()::ts)&&>(hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t::operator()::ts) ...)) hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t::operator()(Tag, Ts&& ...) const [with Tag = hpx::this_thread::experimental::sync_wait_t; Ts = {hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, hpx::parallel::util::detail::foreach_static_partitioner<hpx::execution::detail::parallel_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, void>::reduce<hpx::parallel::util::projection_identity, hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >(hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >&&, hpx::parallel::util::projection_identity&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>)::<lambda()> >}]’
  92. ../libs/core/tag_invoke/include/hpx/functional/invoke_result.hpp:28:17: required by substitution of ‘template<class F, class ... Ts> struct hpx::detail::is_invocable_impl<F(Ts ...), std::void_t<decltype ((typename hpx::util::detail::dispatch_invoke<decltype (declval<F>()), typename std::remove_cv<typename std::remove_reference<decltype (declval<F>())>::type>::type>::type)(declval<F>())((declval<Ts>)()...))> > [with F = const hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t&&; Ts = {hpx::this_thread::experimental::sync_wait_t&&, hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, hpx::parallel::util::detail::foreach_static_partitioner<hpx::execution::detail::parallel_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, void>::reduce<hpx::parallel::util::projection_identity, hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >(hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >&&, hpx::parallel::util::projection_identity&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>)::<lambda()> >&&}]’
  93. ../libs/core/tag_invoke/include/hpx/functional/traits/is_invocable.hpp:70:12: required from ‘struct hpx::is_invocable<const hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t, hpx::this_thread::experimental::sync_wait_t, hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, hpx::parallel::util::detail::foreach_static_partitioner<hpx::execution::detail::parallel_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, void>::reduce<hpx::parallel::util::projection_identity, hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >(hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >&&, hpx::parallel::util::projection_identity&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>)::<lambda()> >&&>’
  94. ../libs/core/tag_invoke/include/hpx/functional/detail/tag_fallback_invoke.hpp:168:50: required from ‘constexpr const bool hpx::functional::detail::is_tag_fallback_invocable_v<hpx::this_thread::experimental::sync_wait_t, hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, hpx::parallel::util::detail::foreach_static_partitioner<hpx::execution::detail::parallel_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, void>::reduce<hpx::parallel::util::projection_identity, hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >(hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >&&, hpx::parallel::util::projection_identity&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>)::<lambda()> >&&>’
  95. ../libs/core/tag_invoke/include/hpx/functional/detail/tag_priority_invoke.hpp:277:57: [ skipping 8 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
  96. ../libs/core/tag_invoke/include/hpx/functional/invoke_result.hpp:38:12: required from ‘struct hpx::util::invoke_result<const hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t, hpx::for_each_t, hpx::execution::detail::parallel_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>&&, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&>’
  97. ../libs/core/tag_invoke/include/hpx/functional/detail/tag_fallback_invoke.hpp:217:11: required by substitution of ‘template<class Tag, class ... Args> using tag_fallback_invoke_result_t = typename hpx::functional::detail::tag_fallback_invoke_result<Tag, Args ...>::type [with Tag = hpx::for_each_t; Args = {hpx::execution::detail::parallel_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>&&, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&}]’
  98. ../libs/core/tag_invoke/include/hpx/functional/detail/tag_fallback_invoke.hpp:281:60: required by substitution of ‘template<class ... Args, class> constexpr hpx::functional::detail::tag_fallback_invoke_result_t<hpx::for_each_t, Args&& ...> hpx::functional::detail::tag_base_ns::tag_fallback<hpx::for_each_t, hpx::meta::constant<std::integral_constant<bool, true> > >::operator()(Args&& ...) const [with Args = {hpx::execution::detail::parallel_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&}; <template-parameter-1-2> = void]’
  99. ../libs/core/algorithms/tests/unit/algorithms/foreach_sender.cpp:42:32: required from ‘void test_for_each_explicit_sender_direct(Policy, ExPolicy&&, IteratorTag) [with Policy = hpx::detail::async_policy; ExPolicy = const hpx::execution::detail::parallel_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&; IteratorTag = std::random_access_iterator_tag]’
  100. ../libs/core/algorithms/tests/unit/algorithms/foreach_sender.cpp:133:41: required from ‘void test_for_each_sender_direct() [with IteratorTag = std::random_access_iterator_tag]’
  101. ../libs/core/algorithms/tests/unit/algorithms/foreach_sender.cpp:163:65: required from here
  102. ../libs/core/execution/include/hpx/execution/algorithms/sync_wait.hpp:166:77: error: call of overloaded ‘get<0>(std::variant<hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >)’ is ambiguous
  103. 166 | return hpx::optional<single_result_type>(hpx::get<0>(
  104. | ~~~~~~~~~~~^
  105. 167 | hpx::get<result_type>(HPX_MOVE(value))));
  106. | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  107. /opt/apps/gcc/12.2.0/include/c++/12.2.0/variant:1717:5: note: candidate: ‘constexpr std::variant_alternative_t<_Np, std::variant<_Types ...> >&& std::get(const variant<_Types ...>&&) [with long unsigned int _Np = 0; _Types = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >}; variant_alternative_t<_Np, variant<_Types ...> > = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >]’
  108. 1717 | get(const variant<_Types...>&& __v)
  109. | ^~~
  110. /opt/apps/gcc/12.2.0/include/c++/12.2.0/variant:1706:5: note: candidate: ‘constexpr std::variant_alternative_t<_Np, std::variant<_Types ...> >& std::get(const variant<_Types ...>&) [with long unsigned int _Np = 0; _Types = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >}; variant_alternative_t<_Np, variant<_Types ...> > = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >]’
  111. 1706 | get(const variant<_Types...>& __v)
  112. | ^~~
  113. /opt/apps/gcc/12.2.0/include/c++/12.2.0/variant:1695:5: note: candidate: ‘constexpr std::variant_alternative_t<_Np, std::variant<_Types ...> >&& std::get(variant<_Types ...>&&) [with long unsigned int _Np = 0; _Types = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >}; variant_alternative_t<_Np, variant<_Types ...> > = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >]’
  114. 1695 | get(variant<_Types...>&& __v)
  115. | ^~~
  116. ../libs/core/datastructures/include/hpx/datastructures/variant_helper.hpp:51:13: note: candidate: ‘constexpr const typename hpx::util::at_index<I, Ts>::type&& hpx::adl_barrier::get(const std::variant<_Types ...>&&) [with long unsigned int I = 0; Ts = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >}; typename hpx::util::at_index<I, Ts>::type = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >]’
  117. 51 | get(std::variant<Ts...> const&& var) noexcept
  118. | ^~~
  119. ../libs/core/datastructures/include/hpx/datastructures/variant_helper.hpp:43:13: note: candidate: ‘constexpr typename hpx::util::at_index<I, Ts>::type&& hpx::adl_barrier::get(std::variant<_Types ...>&&) [with long unsigned int I = 0; Ts = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >}; typename hpx::util::at_index<I, Ts>::type = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >]’
  120. 43 | get(std::variant<Ts...>&& var) noexcept
  121. | ^~~
  122. ../libs/core/datastructures/include/hpx/datastructures/variant_helper.hpp:35:13: note: candidate: ‘constexpr const typename hpx::util::at_index<I, Ts>::type& hpx::adl_barrier::get(const std::variant<_Types ...>&) [with long unsigned int I = 0; Ts = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >}; typename hpx::util::at_index<I, Ts>::type = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >]’
  123. 35 | get(std::variant<Ts...> const& var) noexcept
  124. | ^~~
  125. ../libs/core/execution/include/hpx/execution/algorithms/sync_wait.hpp: In instantiation of ‘auto hpx::execution::experimental::detail::sync_wait_receiver<Sender, Type>::shared_state::get_value() [with Sender = hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, hpx::parallel::util::detail::foreach_static_partitioner<hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, void>::reduce<hpx::parallel::util::projection_identity, hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >(hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >&&, hpx::parallel::util::projection_identity&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>)::<lambda()> >; hpx::execution::experimental::detail::sync_wait_type Type = hpx::execution::experimental::detail::sync_wait_type::single]’:
  126. ../libs/core/execution/include/hpx/execution/algorithms/sync_wait.hpp:442:35: required from ‘auto hpx::this_thread::experimental::tag_fallback_invoke(sync_wait_t, Sender&&) [with Sender = hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, hpx::parallel::util::detail::foreach_static_partitioner<hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, void>::reduce<hpx::parallel::util::projection_identity, hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >(hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >&&, hpx::parallel::util::projection_identity&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>)::<lambda()> >; int _concept_requires_419 = 42; typename std::enable_if<((_concept_requires_390 == 43) || is_sender_v<Sender, hpx::execution::experimental::detail::sync_wait_receiver_env>), int>::type _concept_check_419 = 0; sync_wait_t = sync_wait_t]’
  127. ../libs/core/tag_invoke/include/hpx/functional/detail/tag_fallback_invoke.hpp:130:52: required by substitution of ‘template<class Tag, class ... Ts> constexpr decltype (hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke(declval<Tag>(), static_cast<decltype(hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t::operator()::ts)&&>(hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t::operator()::ts) ...)) hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t::operator()(Tag, Ts&& ...) const [with Tag = hpx::this_thread::experimental::sync_wait_t; Ts = {hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, hpx::parallel::util::detail::foreach_static_partitioner<hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, void>::reduce<hpx::parallel::util::projection_identity, hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >(hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >&&, hpx::parallel::util::projection_identity&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>)::<lambda()> >}]’
  128. ../libs/core/tag_invoke/include/hpx/functional/invoke_result.hpp:28:17: required by substitution of ‘template<class F, class ... Ts> struct hpx::detail::is_invocable_impl<F(Ts ...), std::void_t<decltype ((typename hpx::util::detail::dispatch_invoke<decltype (declval<F>()), typename std::remove_cv<typename std::remove_reference<decltype (declval<F>())>::type>::type>::type)(declval<F>())((declval<Ts>)()...))> > [with F = const hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t&&; Ts = {hpx::this_thread::experimental::sync_wait_t&&, hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, hpx::parallel::util::detail::foreach_static_partitioner<hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, void>::reduce<hpx::parallel::util::projection_identity, hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >(hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >&&, hpx::parallel::util::projection_identity&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>)::<lambda()> >&&}]’
  129. ../libs/core/tag_invoke/include/hpx/functional/traits/is_invocable.hpp:70:12: required from ‘struct hpx::is_invocable<const hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t, hpx::this_thread::experimental::sync_wait_t, hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, hpx::parallel::util::detail::foreach_static_partitioner<hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, void>::reduce<hpx::parallel::util::projection_identity, hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >(hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >&&, hpx::parallel::util::projection_identity&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>)::<lambda()> >&&>’
  130. ../libs/core/tag_invoke/include/hpx/functional/detail/tag_fallback_invoke.hpp:168:50: required from ‘constexpr const bool hpx::functional::detail::is_tag_fallback_invocable_v<hpx::this_thread::experimental::sync_wait_t, hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, hpx::parallel::util::detail::foreach_static_partitioner<hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, void>::reduce<hpx::parallel::util::projection_identity, hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >(hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >&&, hpx::parallel::util::projection_identity&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>)::<lambda()> >&&>’
  131. ../libs/core/tag_invoke/include/hpx/functional/detail/tag_priority_invoke.hpp:277:57: [ skipping 8 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
  132. ../libs/core/tag_invoke/include/hpx/functional/invoke_result.hpp:38:12: required from ‘struct hpx::util::invoke_result<const hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t, hpx::for_each_t, hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>&&, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&>’
  133. ../libs/core/tag_invoke/include/hpx/functional/detail/tag_fallback_invoke.hpp:217:11: required by substitution of ‘template<class Tag, class ... Args> using tag_fallback_invoke_result_t = typename hpx::functional::detail::tag_fallback_invoke_result<Tag, Args ...>::type [with Tag = hpx::for_each_t; Args = {hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>&&, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&}]’
  134. ../libs/core/tag_invoke/include/hpx/functional/detail/tag_fallback_invoke.hpp:281:60: required by substitution of ‘template<class ... Args, class> constexpr hpx::functional::detail::tag_fallback_invoke_result_t<hpx::for_each_t, Args&& ...> hpx::functional::detail::tag_base_ns::tag_fallback<hpx::for_each_t, hpx::meta::constant<std::integral_constant<bool, true> > >::operator()(Args&& ...) const [with Args = {hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct<hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag>(hpx::detail::async_policy, const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&}; <template-parameter-1-2> = void]’
  135. ../libs/core/algorithms/tests/unit/algorithms/foreach_sender.cpp:42:32: required from ‘void test_for_each_explicit_sender_direct(Policy, ExPolicy&&, IteratorTag) [with Policy = hpx::detail::async_policy; ExPolicy = const hpx::execution::detail::parallel_unsequenced_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch> >&; IteratorTag = std::random_access_iterator_tag]’
  136. ../libs/core/algorithms/tests/unit/algorithms/foreach_sender.cpp:135:41: required from ‘void test_for_each_sender_direct() [with IteratorTag = std::random_access_iterator_tag]’
  137. ../libs/core/algorithms/tests/unit/algorithms/foreach_sender.cpp:163:65: required from here
  138. ../libs/core/execution/include/hpx/execution/algorithms/sync_wait.hpp:166:77: error: call of overloaded ‘get<0>(std::variant<hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >)’ is ambiguous
  139. 166 | return hpx::optional<single_result_type>(hpx::get<0>(
  140. | ~~~~~~~~~~~^
  141. 167 | hpx::get<result_type>(HPX_MOVE(value))));
  142. | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  143. /opt/apps/gcc/12.2.0/include/c++/12.2.0/variant:1717:5: note: candidate: ‘constexpr std::variant_alternative_t<_Np, std::variant<_Types ...> >&& std::get(const variant<_Types ...>&&) [with long unsigned int _Np = 0; _Types = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >}; variant_alternative_t<_Np, variant<_Types ...> > = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >]’
  144. 1717 | get(const variant<_Types...>&& __v)
  145. | ^~~
  146. /opt/apps/gcc/12.2.0/include/c++/12.2.0/variant:1706:5: note: candidate: ‘constexpr std::variant_alternative_t<_Np, std::variant<_Types ...> >& std::get(const variant<_Types ...>&) [with long unsigned int _Np = 0; _Types = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >}; variant_alternative_t<_Np, variant<_Types ...> > = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >]’
  147. 1706 | get(const variant<_Types...>& __v)
  148. | ^~~
  149. /opt/apps/gcc/12.2.0/include/c++/12.2.0/variant:1695:5: note: candidate: ‘constexpr std::variant_alternative_t<_Np, std::variant<_Types ...> >&& std::get(variant<_Types ...>&&) [with long unsigned int _Np = 0; _Types = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >}; variant_alternative_t<_Np, variant<_Types ...> > = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >]’
  150. 1695 | get(variant<_Types...>&& __v)
  151. | ^~~
  152. ../libs/core/datastructures/include/hpx/datastructures/variant_helper.hpp:51:13: note: candidate: ‘constexpr const typename hpx::util::at_index<I, Ts>::type&& hpx::adl_barrier::get(const std::variant<_Types ...>&&) [with long unsigned int I = 0; Ts = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >}; typename hpx::util::at_index<I, Ts>::type = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >]’
  153. 51 | get(std::variant<Ts...> const&& var) noexcept
  154. | ^~~
  155. ../libs/core/datastructures/include/hpx/datastructures/variant_helper.hpp:43:13: note: candidate: ‘constexpr typename hpx::util::at_index<I, Ts>::type&& hpx::adl_barrier::get(std::variant<_Types ...>&&) [with long unsigned int I = 0; Ts = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >}; typename hpx::util::at_index<I, Ts>::type = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >]’
  156. 43 | get(std::variant<Ts...>&& var) noexcept
  157. | ^~~
  158. ../libs/core/datastructures/include/hpx/datastructures/variant_helper.hpp:35:13: note: candidate: ‘constexpr const typename hpx::util::at_index<I, Ts>::type& hpx::adl_barrier::get(const std::variant<_Types ...>&) [with long unsigned int I = 0; Ts = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >}; typename hpx::util::at_index<I, Ts>::type = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >]’
  159. 35 | get(std::variant<Ts...> const& var) noexcept
  160. | ^~~
  161. ../libs/core/execution/include/hpx/execution/algorithms/sync_wait.hpp: In instantiation of ‘auto hpx::execution::experimental::detail::sync_wait_receiver<Sender, Type>::shared_state::get_value() [with Sender = hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::util::detail::deferred<hpx::parallel::v1::detail::for_each<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::util::pack_c<long unsigned int, 0, 1, 2, 3, 4>, hpx::execution::detail::sequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct_async<hpx::detail::sync_policy, hpx::execution::detail::sequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::sync_policy, hpx::execution::detail::sequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>, hpx::parallel::util::projection_identity> >; hpx::execution::experimental::detail::sync_wait_type Type = hpx::execution::experimental::detail::sync_wait_type::single]’:
  162. ../libs/core/execution/include/hpx/execution/algorithms/sync_wait.hpp:442:35: required from ‘auto hpx::this_thread::experimental::tag_fallback_invoke(sync_wait_t, Sender&&) [with Sender = hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::util::detail::deferred<hpx::parallel::v1::detail::for_each<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::util::pack_c<long unsigned int, 0, 1, 2, 3, 4>, hpx::execution::detail::sequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct_async<hpx::detail::sync_policy, hpx::execution::detail::sequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::sync_policy, hpx::execution::detail::sequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>, hpx::parallel::util::projection_identity> >; int _concept_requires_419 = 42; typename std::enable_if<((_concept_requires_390 == 43) || is_sender_v<Sender, hpx::execution::experimental::detail::sync_wait_receiver_env>), int>::type _concept_check_419 = 0; sync_wait_t = sync_wait_t]’
  163. ../libs/core/tag_invoke/include/hpx/functional/detail/tag_fallback_invoke.hpp:130:52: required by substitution of ‘template<class Tag, class ... Ts> constexpr decltype (hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke(declval<Tag>(), static_cast<decltype(hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t::operator()::ts)&&>(hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t::operator()::ts) ...)) hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t::operator()(Tag, Ts&& ...) const [with Tag = hpx::this_thread::experimental::sync_wait_t; Ts = {hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::util::detail::deferred<hpx::parallel::v1::detail::for_each<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::util::pack_c<long unsigned int, 0, 1, 2, 3, 4>, hpx::execution::detail::sequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct_async<hpx::detail::sync_policy, hpx::execution::detail::sequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::sync_policy, hpx::execution::detail::sequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>, hpx::parallel::util::projection_identity> >}]’
  164. ../libs/core/tag_invoke/include/hpx/functional/invoke_result.hpp:28:17: required by substitution of ‘template<class F, class ... Ts> struct hpx::detail::is_invocable_impl<F(Ts ...), std::void_t<decltype ((typename hpx::util::detail::dispatch_invoke<decltype (declval<F>()), typename std::remove_cv<typename std::remove_reference<decltype (declval<F>())>::type>::type>::type)(declval<F>())((declval<Ts>)()...))> > [with F = const hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t&&; Ts = {hpx::this_thread::experimental::sync_wait_t&&, hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::util::detail::deferred<hpx::parallel::v1::detail::for_each<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::util::pack_c<long unsigned int, 0, 1, 2, 3, 4>, hpx::execution::detail::sequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct_async<hpx::detail::sync_policy, hpx::execution::detail::sequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::sync_policy, hpx::execution::detail::sequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>, hpx::parallel::util::projection_identity> >&&}]’
  165. ../libs/core/tag_invoke/include/hpx/functional/traits/is_invocable.hpp:70:12: required from ‘struct hpx::is_invocable<const hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t, hpx::this_thread::experimental::sync_wait_t, hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::util::detail::deferred<hpx::parallel::v1::detail::for_each<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::util::pack_c<long unsigned int, 0, 1, 2, 3, 4>, hpx::execution::detail::sequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct_async<hpx::detail::sync_policy, hpx::execution::detail::sequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::sync_policy, hpx::execution::detail::sequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>, hpx::parallel::util::projection_identity> >&&>’
  166. ../libs/core/tag_invoke/include/hpx/functional/detail/tag_fallback_invoke.hpp:168:50: required from ‘constexpr const bool hpx::functional::detail::is_tag_fallback_invocable_v<hpx::this_thread::experimental::sync_wait_t, hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::util::detail::deferred<hpx::parallel::v1::detail::for_each<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::util::pack_c<long unsigned int, 0, 1, 2, 3, 4>, hpx::execution::detail::sequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct_async<hpx::detail::sync_policy, hpx::execution::detail::sequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::sync_policy, hpx::execution::detail::sequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>, hpx::parallel::util::projection_identity> >&&>’
  167. ../libs/core/tag_invoke/include/hpx/functional/detail/tag_priority_invoke.hpp:277:57: required by substitution of ‘template<class ... Args, class Enable> constexpr hpx::functional::detail::tag_fallback_invoke_result_t<hpx::this_thread::experimental::sync_wait_t, Args&& ...> hpx::functional::detail::tag_base_ns::tag_priority<hpx::this_thread::experimental::sync_wait_t>::operator()(Args&& ...) const [with Args = {hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::util::detail::deferred<hpx::parallel::v1::detail::for_each<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::util::pack_c<long unsigned int, 0, 1, 2, 3, 4>, hpx::execution::detail::sequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct_async<hpx::detail::sync_policy, hpx::execution::detail::sequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::sync_policy, hpx::execution::detail::sequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>, hpx::parallel::util::projection_identity> >}; Enable = <missing>]’
  168. ../libs/core/execution/include/hpx/execution/algorithms/detail/partial_algorithm.hpp:36:25: required from ‘constexpr auto hpx::execution::experimental::detail::partial_algorithm_base<Tag, hpx::util::pack_c<long unsigned int, Right ...>, Ts ...>::invoke(Us&& ...) && [with Us = {hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::util::detail::deferred<hpx::parallel::v1::detail::for_each<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::util::pack_c<long unsigned int, 0, 1, 2, 3, 4>, hpx::execution::detail::sequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct_async<hpx::detail::sync_policy, hpx::execution::detail::sequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::sync_policy, hpx::execution::detail::sequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>, hpx::parallel::util::projection_identity> >}; Tag = hpx::this_thread::experimental::sync_wait_t; long unsigned int ...Is = {}; Ts = {}]’
  169. ../libs/core/execution/include/hpx/execution/algorithms/detail/partial_algorithm.hpp:85:38: required from ‘constexpr auto hpx::execution::experimental::detail::operator|(U&&, partial_algorithm_base<Tag, hpx::util::pack_c<long unsigned int, Right ...>, Ts ...>) [with U = then_sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::util::detail::deferred<hpx::parallel::v1::detail::for_each<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::util::pack_c<long unsigned int, 0, 1, 2, 3, 4>, hpx::execution::detail::sequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct_async<hpx::detail::sync_policy, hpx::execution::detail::sequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::sync_policy, hpx::execution::detail::sequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>, hpx::parallel::util::projection_identity> >; int _concept_requires_74 = 42; typename std::enable_if<((_concept_requires_74 == 43) || (is_sender_v<U> && (! is_completion_scheduler_tag_invocable_v<hpx::execution::experimental::set_value_t, U, Tag, Ts ...>))), int>::type _concept_check_74 = 0; Tag = hpx::this_thread::experimental::sync_wait_t; long unsigned int ...Is = {}; Ts = {}]’
  170. ../libs/core/algorithms/tests/unit/algorithms/foreach_sender.cpp:78:49: required from ‘void test_for_each_explicit_sender_direct_async(Policy, ExPolicy&&, IteratorTag) [with Policy = hpx::detail::sync_policy; ExPolicy = hpx::execution::detail::sequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>; IteratorTag = std::random_access_iterator_tag]’
  171. ../libs/core/algorithms/tests/unit/algorithms/foreach_sender.cpp:138:47: required from ‘void test_for_each_sender_direct() [with IteratorTag = std::random_access_iterator_tag]’
  172. ../libs/core/algorithms/tests/unit/algorithms/foreach_sender.cpp:163:65: required from here
  173. ../libs/core/execution/include/hpx/execution/algorithms/sync_wait.hpp:166:77: error: call of overloaded ‘get<0>(std::variant<hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >)’ is ambiguous
  174. 166 | return hpx::optional<single_result_type>(hpx::get<0>(
  175. | ~~~~~~~~~~~^
  176. 167 | hpx::get<result_type>(HPX_MOVE(value))));
  177. | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  178. /opt/apps/gcc/12.2.0/include/c++/12.2.0/variant:1717:5: note: candidate: ‘constexpr std::variant_alternative_t<_Np, std::variant<_Types ...> >&& std::get(const variant<_Types ...>&&) [with long unsigned int _Np = 0; _Types = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >}; variant_alternative_t<_Np, variant<_Types ...> > = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >]’
  179. 1717 | get(const variant<_Types...>&& __v)
  180. | ^~~
  181. /opt/apps/gcc/12.2.0/include/c++/12.2.0/variant:1706:5: note: candidate: ‘constexpr std::variant_alternative_t<_Np, std::variant<_Types ...> >& std::get(const variant<_Types ...>&) [with long unsigned int _Np = 0; _Types = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >}; variant_alternative_t<_Np, variant<_Types ...> > = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >]’
  182. 1706 | get(const variant<_Types...>& __v)
  183. | ^~~
  184. /opt/apps/gcc/12.2.0/include/c++/12.2.0/variant:1695:5: note: candidate: ‘constexpr std::variant_alternative_t<_Np, std::variant<_Types ...> >&& std::get(variant<_Types ...>&&) [with long unsigned int _Np = 0; _Types = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >}; variant_alternative_t<_Np, variant<_Types ...> > = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >]’
  185. 1695 | get(variant<_Types...>&& __v)
  186. | ^~~
  187. ../libs/core/datastructures/include/hpx/datastructures/variant_helper.hpp:51:13: note: candidate: ‘constexpr const typename hpx::util::at_index<I, Ts>::type&& hpx::adl_barrier::get(const std::variant<_Types ...>&&) [with long unsigned int I = 0; Ts = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >}; typename hpx::util::at_index<I, Ts>::type = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >]’
  188. 51 | get(std::variant<Ts...> const&& var) noexcept
  189. | ^~~
  190. ../libs/core/datastructures/include/hpx/datastructures/variant_helper.hpp:43:13: note: candidate: ‘constexpr typename hpx::util::at_index<I, Ts>::type&& hpx::adl_barrier::get(std::variant<_Types ...>&&) [with long unsigned int I = 0; Ts = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >}; typename hpx::util::at_index<I, Ts>::type = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >]’
  191. 43 | get(std::variant<Ts...>&& var) noexcept
  192. | ^~~
  193. ../libs/core/datastructures/include/hpx/datastructures/variant_helper.hpp:35:13: note: candidate: ‘constexpr const typename hpx::util::at_index<I, Ts>::type& hpx::adl_barrier::get(const std::variant<_Types ...>&) [with long unsigned int I = 0; Ts = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >}; typename hpx::util::at_index<I, Ts>::type = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >]’
  194. 35 | get(std::variant<Ts...> const& var) noexcept
  195. | ^~~
  196. ../libs/core/execution/include/hpx/execution/algorithms/sync_wait.hpp: In instantiation of ‘auto hpx::execution::experimental::detail::sync_wait_receiver<Sender, Type>::shared_state::get_value() [with Sender = hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::util::detail::deferred<hpx::parallel::v1::detail::for_each<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::util::pack_c<long unsigned int, 0, 1, 2, 3, 4>, hpx::execution::detail::unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct_async<hpx::detail::sync_policy, hpx::execution::detail::unsequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::sync_policy, hpx::execution::detail::unsequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>, hpx::parallel::util::projection_identity> >; hpx::execution::experimental::detail::sync_wait_type Type = hpx::execution::experimental::detail::sync_wait_type::single]’:
  197. ../libs/core/execution/include/hpx/execution/algorithms/sync_wait.hpp:442:35: required from ‘auto hpx::this_thread::experimental::tag_fallback_invoke(sync_wait_t, Sender&&) [with Sender = hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::util::detail::deferred<hpx::parallel::v1::detail::for_each<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::util::pack_c<long unsigned int, 0, 1, 2, 3, 4>, hpx::execution::detail::unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct_async<hpx::detail::sync_policy, hpx::execution::detail::unsequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::sync_policy, hpx::execution::detail::unsequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>, hpx::parallel::util::projection_identity> >; int _concept_requires_419 = 42; typename std::enable_if<((_concept_requires_390 == 43) || is_sender_v<Sender, hpx::execution::experimental::detail::sync_wait_receiver_env>), int>::type _concept_check_419 = 0; sync_wait_t = sync_wait_t]’
  198. ../libs/core/tag_invoke/include/hpx/functional/detail/tag_fallback_invoke.hpp:130:52: required by substitution of ‘template<class Tag, class ... Ts> constexpr decltype (hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke(declval<Tag>(), static_cast<decltype(hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t::operator()::ts)&&>(hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t::operator()::ts) ...)) hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t::operator()(Tag, Ts&& ...) const [with Tag = hpx::this_thread::experimental::sync_wait_t; Ts = {hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::util::detail::deferred<hpx::parallel::v1::detail::for_each<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::util::pack_c<long unsigned int, 0, 1, 2, 3, 4>, hpx::execution::detail::unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct_async<hpx::detail::sync_policy, hpx::execution::detail::unsequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::sync_policy, hpx::execution::detail::unsequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>, hpx::parallel::util::projection_identity> >}]’
  199. ../libs/core/tag_invoke/include/hpx/functional/invoke_result.hpp:28:17: required by substitution of ‘template<class F, class ... Ts> struct hpx::detail::is_invocable_impl<F(Ts ...), std::void_t<decltype ((typename hpx::util::detail::dispatch_invoke<decltype (declval<F>()), typename std::remove_cv<typename std::remove_reference<decltype (declval<F>())>::type>::type>::type)(declval<F>())((declval<Ts>)()...))> > [with F = const hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t&&; Ts = {hpx::this_thread::experimental::sync_wait_t&&, hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::util::detail::deferred<hpx::parallel::v1::detail::for_each<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::util::pack_c<long unsigned int, 0, 1, 2, 3, 4>, hpx::execution::detail::unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct_async<hpx::detail::sync_policy, hpx::execution::detail::unsequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::sync_policy, hpx::execution::detail::unsequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>, hpx::parallel::util::projection_identity> >&&}]’
  200. ../libs/core/tag_invoke/include/hpx/functional/traits/is_invocable.hpp:70:12: required from ‘struct hpx::is_invocable<const hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t, hpx::this_thread::experimental::sync_wait_t, hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::util::detail::deferred<hpx::parallel::v1::detail::for_each<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::util::pack_c<long unsigned int, 0, 1, 2, 3, 4>, hpx::execution::detail::unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct_async<hpx::detail::sync_policy, hpx::execution::detail::unsequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::sync_policy, hpx::execution::detail::unsequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>, hpx::parallel::util::projection_identity> >&&>’
  201. ../libs/core/tag_invoke/include/hpx/functional/detail/tag_fallback_invoke.hpp:168:50: required from ‘constexpr const bool hpx::functional::detail::is_tag_fallback_invocable_v<hpx::this_thread::experimental::sync_wait_t, hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::util::detail::deferred<hpx::parallel::v1::detail::for_each<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::util::pack_c<long unsigned int, 0, 1, 2, 3, 4>, hpx::execution::detail::unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct_async<hpx::detail::sync_policy, hpx::execution::detail::unsequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::sync_policy, hpx::execution::detail::unsequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>, hpx::parallel::util::projection_identity> >&&>’
  202. ../libs/core/tag_invoke/include/hpx/functional/detail/tag_priority_invoke.hpp:277:57: required by substitution of ‘template<class ... Args, class Enable> constexpr hpx::functional::detail::tag_fallback_invoke_result_t<hpx::this_thread::experimental::sync_wait_t, Args&& ...> hpx::functional::detail::tag_base_ns::tag_priority<hpx::this_thread::experimental::sync_wait_t>::operator()(Args&& ...) const [with Args = {hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::util::detail::deferred<hpx::parallel::v1::detail::for_each<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::util::pack_c<long unsigned int, 0, 1, 2, 3, 4>, hpx::execution::detail::unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct_async<hpx::detail::sync_policy, hpx::execution::detail::unsequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::sync_policy, hpx::execution::detail::unsequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>, hpx::parallel::util::projection_identity> >}; Enable = <missing>]’
  203. ../libs/core/execution/include/hpx/execution/algorithms/detail/partial_algorithm.hpp:36:25: required from ‘constexpr auto hpx::execution::experimental::detail::partial_algorithm_base<Tag, hpx::util::pack_c<long unsigned int, Right ...>, Ts ...>::invoke(Us&& ...) && [with Us = {hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::util::detail::deferred<hpx::parallel::v1::detail::for_each<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::util::pack_c<long unsigned int, 0, 1, 2, 3, 4>, hpx::execution::detail::unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct_async<hpx::detail::sync_policy, hpx::execution::detail::unsequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::sync_policy, hpx::execution::detail::unsequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>, hpx::parallel::util::projection_identity> >}; Tag = hpx::this_thread::experimental::sync_wait_t; long unsigned int ...Is = {}; Ts = {}]’
  204. ../libs/core/execution/include/hpx/execution/algorithms/detail/partial_algorithm.hpp:85:38: required from ‘constexpr auto hpx::execution::experimental::detail::operator|(U&&, partial_algorithm_base<Tag, hpx::util::pack_c<long unsigned int, Right ...>, Ts ...>) [with U = then_sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::util::detail::deferred<hpx::parallel::v1::detail::for_each<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::util::pack_c<long unsigned int, 0, 1, 2, 3, 4>, hpx::execution::detail::unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::sync_policy> >, hpx::execution::static_chunk_size>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>, test_for_each_explicit_sender_direct_async<hpx::detail::sync_policy, hpx::execution::detail::unsequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::sync_policy, hpx::execution::detail::unsequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>, hpx::parallel::util::projection_identity> >; int _concept_requires_74 = 42; typename std::enable_if<((_concept_requires_74 == 43) || (is_sender_v<U> && (! is_completion_scheduler_tag_invocable_v<hpx::execution::experimental::set_value_t, U, Tag, Ts ...>))), int>::type _concept_check_74 = 0; Tag = hpx::this_thread::experimental::sync_wait_t; long unsigned int ...Is = {}; Ts = {}]’
  205. ../libs/core/algorithms/tests/unit/algorithms/foreach_sender.cpp:78:49: required from ‘void test_for_each_explicit_sender_direct_async(Policy, ExPolicy&&, IteratorTag) [with Policy = hpx::detail::sync_policy; ExPolicy = hpx::execution::detail::unsequenced_task_policy_shim<hpx::execution::sequenced_executor, hpx::execution::static_chunk_size>; IteratorTag = std::random_access_iterator_tag]’
  206. ../libs/core/algorithms/tests/unit/algorithms/foreach_sender.cpp:140:47: required from ‘void test_for_each_sender_direct() [with IteratorTag = std::random_access_iterator_tag]’
  207. ../libs/core/algorithms/tests/unit/algorithms/foreach_sender.cpp:163:65: required from here
  208. ../libs/core/execution/include/hpx/execution/algorithms/sync_wait.hpp:166:77: error: call of overloaded ‘get<0>(std::variant<hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >)’ is ambiguous
  209. 166 | return hpx::optional<single_result_type>(hpx::get<0>(
  210. | ~~~~~~~~~~~^
  211. 167 | hpx::get<result_type>(HPX_MOVE(value))));
  212. | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  213. /opt/apps/gcc/12.2.0/include/c++/12.2.0/variant:1717:5: note: candidate: ‘constexpr std::variant_alternative_t<_Np, std::variant<_Types ...> >&& std::get(const variant<_Types ...>&&) [with long unsigned int _Np = 0; _Types = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >}; variant_alternative_t<_Np, variant<_Types ...> > = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >]’
  214. 1717 | get(const variant<_Types...>&& __v)
  215. | ^~~
  216. /opt/apps/gcc/12.2.0/include/c++/12.2.0/variant:1706:5: note: candidate: ‘constexpr std::variant_alternative_t<_Np, std::variant<_Types ...> >& std::get(const variant<_Types ...>&) [with long unsigned int _Np = 0; _Types = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >}; variant_alternative_t<_Np, variant<_Types ...> > = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >]’
  217. 1706 | get(const variant<_Types...>& __v)
  218. | ^~~
  219. /opt/apps/gcc/12.2.0/include/c++/12.2.0/variant:1695:5: note: candidate: ‘constexpr std::variant_alternative_t<_Np, std::variant<_Types ...> >&& std::get(variant<_Types ...>&&) [with long unsigned int _Np = 0; _Types = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >}; variant_alternative_t<_Np, variant<_Types ...> > = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >]’
  220. 1695 | get(variant<_Types...>&& __v)
  221. | ^~~
  222. ../libs/core/datastructures/include/hpx/datastructures/variant_helper.hpp:51:13: note: candidate: ‘constexpr const typename hpx::util::at_index<I, Ts>::type&& hpx::adl_barrier::get(const std::variant<_Types ...>&&) [with long unsigned int I = 0; Ts = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >}; typename hpx::util::at_index<I, Ts>::type = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >]’
  223. 51 | get(std::variant<Ts...> const&& var) noexcept
  224. | ^~~
  225. ../libs/core/datastructures/include/hpx/datastructures/variant_helper.hpp:43:13: note: candidate: ‘constexpr typename hpx::util::at_index<I, Ts>::type&& hpx::adl_barrier::get(std::variant<_Types ...>&&) [with long unsigned int I = 0; Ts = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >}; typename hpx::util::at_index<I, Ts>::type = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >]’
  226. 43 | get(std::variant<Ts...>&& var) noexcept
  227. | ^~~
  228. ../libs/core/datastructures/include/hpx/datastructures/variant_helper.hpp:35:13: note: candidate: ‘constexpr const typename hpx::util::at_index<I, Ts>::type& hpx::adl_barrier::get(const std::variant<_Types ...>&) [with long unsigned int I = 0; Ts = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >}; typename hpx::util::at_index<I, Ts>::type = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >]’
  229. 35 | get(std::variant<Ts...> const& var) noexcept
  230. | ^~~
  231. ../libs/core/execution/include/hpx/execution/algorithms/sync_wait.hpp: In instantiation of ‘auto hpx::execution::experimental::detail::sync_wait_receiver<Sender, Type>::shared_state::get_value() [with Sender = hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, hpx::parallel::util::detail::foreach_static_partitioner<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, void>::reduce<hpx::parallel::util::projection_identity, hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >(hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >&&, hpx::parallel::util::projection_identity&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>)::<lambda()> >; hpx::execution::experimental::detail::sync_wait_type Type = hpx::execution::experimental::detail::sync_wait_type::single]’:
  232. ../libs/core/execution/include/hpx/execution/algorithms/sync_wait.hpp:442:35: required from ‘auto hpx::this_thread::experimental::tag_fallback_invoke(sync_wait_t, Sender&&) [with Sender = hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, hpx::parallel::util::detail::foreach_static_partitioner<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, void>::reduce<hpx::parallel::util::projection_identity, hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >(hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >&&, hpx::parallel::util::projection_identity&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>)::<lambda()> >; int _concept_requires_419 = 42; typename std::enable_if<((_concept_requires_390 == 43) || is_sender_v<Sender, hpx::execution::experimental::detail::sync_wait_receiver_env>), int>::type _concept_check_419 = 0; sync_wait_t = sync_wait_t]’
  233. ../libs/core/tag_invoke/include/hpx/functional/detail/tag_fallback_invoke.hpp:130:52: required by substitution of ‘template<class Tag, class ... Ts> constexpr decltype (hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke(declval<Tag>(), static_cast<decltype(hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t::operator()::ts)&&>(hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t::operator()::ts) ...)) hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t::operator()(Tag, Ts&& ...) const [with Tag = hpx::this_thread::experimental::sync_wait_t; Ts = {hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, hpx::parallel::util::detail::foreach_static_partitioner<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, void>::reduce<hpx::parallel::util::projection_identity, hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >(hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >&&, hpx::parallel::util::projection_identity&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>)::<lambda()> >}]’
  234. ../libs/core/tag_invoke/include/hpx/functional/invoke_result.hpp:28:17: required by substitution of ‘template<class F, class ... Ts> struct hpx::detail::is_invocable_impl<F(Ts ...), std::void_t<decltype ((typename hpx::util::detail::dispatch_invoke<decltype (declval<F>()), typename std::remove_cv<typename std::remove_reference<decltype (declval<F>())>::type>::type>::type)(declval<F>())((declval<Ts>)()...))> > [with F = const hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t&&; Ts = {hpx::this_thread::experimental::sync_wait_t&&, hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, hpx::parallel::util::detail::foreach_static_partitioner<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, void>::reduce<hpx::parallel::util::projection_identity, hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >(hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >&&, hpx::parallel::util::projection_identity&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>)::<lambda()> >&&}]’
  235. ../libs/core/tag_invoke/include/hpx/functional/traits/is_invocable.hpp:70:12: required from ‘struct hpx::is_invocable<const hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t, hpx::this_thread::experimental::sync_wait_t, hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, hpx::parallel::util::detail::foreach_static_partitioner<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, void>::reduce<hpx::parallel::util::projection_identity, hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >(hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >&&, hpx::parallel::util::projection_identity&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>)::<lambda()> >&&>’
  236. ../libs/core/tag_invoke/include/hpx/functional/detail/tag_fallback_invoke.hpp:168:50: required from ‘constexpr const bool hpx::functional::detail::is_tag_fallback_invocable_v<hpx::this_thread::experimental::sync_wait_t, hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, hpx::parallel::util::detail::foreach_static_partitioner<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, void>::reduce<hpx::parallel::util::projection_identity, hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >(hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >&&, hpx::parallel::util::projection_identity&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>)::<lambda()> >&&>’
  237. ../libs/core/tag_invoke/include/hpx/functional/detail/tag_priority_invoke.hpp:277:57: required by substitution of ‘template<class ... Args, class Enable> constexpr hpx::functional::detail::tag_fallback_invoke_result_t<hpx::this_thread::experimental::sync_wait_t, Args&& ...> hpx::functional::detail::tag_base_ns::tag_priority<hpx::this_thread::experimental::sync_wait_t>::operator()(Args&& ...) const [with Args = {hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, hpx::parallel::util::detail::foreach_static_partitioner<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, void>::reduce<hpx::parallel::util::projection_identity, hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >(hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >&&, hpx::parallel::util::projection_identity&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>)::<lambda()> >}; Enable = <missing>]’
  238. ../libs/core/execution/include/hpx/execution/algorithms/detail/partial_algorithm.hpp:36:25: required from ‘constexpr auto hpx::execution::experimental::detail::partial_algorithm_base<Tag, hpx::util::pack_c<long unsigned int, Right ...>, Ts ...>::invoke(Us&& ...) && [with Us = {hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, hpx::parallel::util::detail::foreach_static_partitioner<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, void>::reduce<hpx::parallel::util::projection_identity, hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >(hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >&&, hpx::parallel::util::projection_identity&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>)::<lambda()> >}; Tag = hpx::this_thread::experimental::sync_wait_t; long unsigned int ...Is = {}; Ts = {}]’
  239. ../libs/core/execution/include/hpx/execution/algorithms/detail/partial_algorithm.hpp:85:38: required from ‘constexpr auto hpx::execution::experimental::detail::operator|(U&&, partial_algorithm_base<Tag, hpx::util::pack_c<long unsigned int, Right ...>, Ts ...>) [with U = then_sender<thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, hpx::parallel::util::detail::foreach_static_partitioner<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, void>::reduce<hpx::parallel::util::projection_identity, hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >(hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >&&, hpx::parallel::util::projection_identity&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>)::<lambda()> >; int _concept_requires_74 = 42; typename std::enable_if<((_concept_requires_74 == 43) || (is_sender_v<U> && (! is_completion_scheduler_tag_invocable_v<hpx::execution::experimental::set_value_t, U, Tag, Ts ...>))), int>::type _concept_check_74 = 0; Tag = hpx::this_thread::experimental::sync_wait_t; long unsigned int ...Is = {}; Ts = {}]’
  240. ../libs/core/algorithms/tests/unit/algorithms/foreach_sender.cpp:78:49: required from ‘void test_for_each_explicit_sender_direct_async(Policy, ExPolicy&&, IteratorTag) [with Policy = hpx::detail::async_policy; ExPolicy = hpx::execution::detail::parallel_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>; IteratorTag = std::random_access_iterator_tag]’
  241. ../libs/core/algorithms/tests/unit/algorithms/foreach_sender.cpp:142:47: required from ‘void test_for_each_sender_direct() [with IteratorTag = std::random_access_iterator_tag]’
  242. ../libs/core/algorithms/tests/unit/algorithms/foreach_sender.cpp:163:65: required from here
  243. ../libs/core/execution/include/hpx/execution/algorithms/sync_wait.hpp:166:77: error: call of overloaded ‘get<0>(std::variant<hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >)’ is ambiguous
  244. 166 | return hpx::optional<single_result_type>(hpx::get<0>(
  245. | ~~~~~~~~~~~^
  246. 167 | hpx::get<result_type>(HPX_MOVE(value))));
  247. | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  248. /opt/apps/gcc/12.2.0/include/c++/12.2.0/variant:1717:5: note: candidate: ‘constexpr std::variant_alternative_t<_Np, std::variant<_Types ...> >&& std::get(const variant<_Types ...>&&) [with long unsigned int _Np = 0; _Types = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >}; variant_alternative_t<_Np, variant<_Types ...> > = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >]’
  249. 1717 | get(const variant<_Types...>&& __v)
  250. | ^~~
  251. /opt/apps/gcc/12.2.0/include/c++/12.2.0/variant:1706:5: note: candidate: ‘constexpr std::variant_alternative_t<_Np, std::variant<_Types ...> >& std::get(const variant<_Types ...>&) [with long unsigned int _Np = 0; _Types = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >}; variant_alternative_t<_Np, variant<_Types ...> > = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >]’
  252. 1706 | get(const variant<_Types...>& __v)
  253. | ^~~
  254. /opt/apps/gcc/12.2.0/include/c++/12.2.0/variant:1695:5: note: candidate: ‘constexpr std::variant_alternative_t<_Np, std::variant<_Types ...> >&& std::get(variant<_Types ...>&&) [with long unsigned int _Np = 0; _Types = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >}; variant_alternative_t<_Np, variant<_Types ...> > = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >]’
  255. 1695 | get(variant<_Types...>&& __v)
  256. | ^~~
  257. ../libs/core/datastructures/include/hpx/datastructures/variant_helper.hpp:51:13: note: candidate: ‘constexpr const typename hpx::util::at_index<I, Ts>::type&& hpx::adl_barrier::get(const std::variant<_Types ...>&&) [with long unsigned int I = 0; Ts = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >}; typename hpx::util::at_index<I, Ts>::type = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >]’
  258. 51 | get(std::variant<Ts...> const&& var) noexcept
  259. | ^~~
  260. ../libs/core/datastructures/include/hpx/datastructures/variant_helper.hpp:43:13: note: candidate: ‘constexpr typename hpx::util::at_index<I, Ts>::type&& hpx::adl_barrier::get(std::variant<_Types ...>&&) [with long unsigned int I = 0; Ts = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >}; typename hpx::util::at_index<I, Ts>::type = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >]’
  261. 43 | get(std::variant<Ts...>&& var) noexcept
  262. | ^~~
  263. ../libs/core/datastructures/include/hpx/datastructures/variant_helper.hpp:35:13: note: candidate: ‘constexpr const typename hpx::util::at_index<I, Ts>::type& hpx::adl_barrier::get(const std::variant<_Types ...>&) [with long unsigned int I = 0; Ts = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >}; typename hpx::util::at_index<I, Ts>::type = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >]’
  264. 35 | get(std::variant<Ts...> const& var) noexcept
  265. | ^~~
  266. ../libs/core/execution/include/hpx/execution/algorithms/sync_wait.hpp: In instantiation of ‘auto hpx::execution::experimental::detail::sync_wait_receiver<Sender, Type>::shared_state::get_value() [with Sender = hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, hpx::parallel::util::detail::foreach_static_partitioner<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, void>::reduce<hpx::parallel::util::projection_identity, hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >(hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >&&, hpx::parallel::util::projection_identity&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>)::<lambda()> >; hpx::execution::experimental::detail::sync_wait_type Type = hpx::execution::experimental::detail::sync_wait_type::single]’:
  267. ../libs/core/execution/include/hpx/execution/algorithms/sync_wait.hpp:442:35: required from ‘auto hpx::this_thread::experimental::tag_fallback_invoke(sync_wait_t, Sender&&) [with Sender = hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, hpx::parallel::util::detail::foreach_static_partitioner<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, void>::reduce<hpx::parallel::util::projection_identity, hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >(hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >&&, hpx::parallel::util::projection_identity&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>)::<lambda()> >; int _concept_requires_419 = 42; typename std::enable_if<((_concept_requires_390 == 43) || is_sender_v<Sender, hpx::execution::experimental::detail::sync_wait_receiver_env>), int>::type _concept_check_419 = 0; sync_wait_t = sync_wait_t]’
  268. ../libs/core/tag_invoke/include/hpx/functional/detail/tag_fallback_invoke.hpp:130:52: required by substitution of ‘template<class Tag, class ... Ts> constexpr decltype (hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke(declval<Tag>(), static_cast<decltype(hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t::operator()::ts)&&>(hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t::operator()::ts) ...)) hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t::operator()(Tag, Ts&& ...) const [with Tag = hpx::this_thread::experimental::sync_wait_t; Ts = {hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, hpx::parallel::util::detail::foreach_static_partitioner<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, void>::reduce<hpx::parallel::util::projection_identity, hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >(hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >&&, hpx::parallel::util::projection_identity&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>)::<lambda()> >}]’
  269. ../libs/core/tag_invoke/include/hpx/functional/invoke_result.hpp:28:17: required by substitution of ‘template<class F, class ... Ts> struct hpx::detail::is_invocable_impl<F(Ts ...), std::void_t<decltype ((typename hpx::util::detail::dispatch_invoke<decltype (declval<F>()), typename std::remove_cv<typename std::remove_reference<decltype (declval<F>())>::type>::type>::type)(declval<F>())((declval<Ts>)()...))> > [with F = const hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t&&; Ts = {hpx::this_thread::experimental::sync_wait_t&&, hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, hpx::parallel::util::detail::foreach_static_partitioner<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, void>::reduce<hpx::parallel::util::projection_identity, hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >(hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >&&, hpx::parallel::util::projection_identity&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>)::<lambda()> >&&}]’
  270. ../libs/core/tag_invoke/include/hpx/functional/traits/is_invocable.hpp:70:12: required from ‘struct hpx::is_invocable<const hpx::functional::detail::tag_fallback_invoke_t_ns::tag_fallback_invoke_t, hpx::this_thread::experimental::sync_wait_t, hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, hpx::parallel::util::detail::foreach_static_partitioner<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, void>::reduce<hpx::parallel::util::projection_identity, hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >(hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >&&, hpx::parallel::util::projection_identity&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>)::<lambda()> >&&>’
  271. ../libs/core/tag_invoke/include/hpx/functional/detail/tag_fallback_invoke.hpp:168:50: required from ‘constexpr const bool hpx::functional::detail::is_tag_fallback_invocable_v<hpx::this_thread::experimental::sync_wait_t, hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, hpx::parallel::util::detail::foreach_static_partitioner<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, void>::reduce<hpx::parallel::util::projection_identity, hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >(hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >&&, hpx::parallel::util::projection_identity&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>)::<lambda()> >&&>’
  272. ../libs/core/tag_invoke/include/hpx/functional/detail/tag_priority_invoke.hpp:277:57: required by substitution of ‘template<class ... Args, class Enable> constexpr hpx::functional::detail::tag_fallback_invoke_result_t<hpx::this_thread::experimental::sync_wait_t, Args&& ...> hpx::functional::detail::tag_base_ns::tag_priority<hpx::this_thread::experimental::sync_wait_t>::operator()(Args&& ...) const [with Args = {hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, hpx::parallel::util::detail::foreach_static_partitioner<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, void>::reduce<hpx::parallel::util::projection_identity, hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >(hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >&&, hpx::parallel::util::projection_identity&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>)::<lambda()> >}; Enable = <missing>]’
  273. ../libs/core/execution/include/hpx/execution/algorithms/detail/partial_algorithm.hpp:36:25: required from ‘constexpr auto hpx::execution::experimental::detail::partial_algorithm_base<Tag, hpx::util::pack_c<long unsigned int, Right ...>, Ts ...>::invoke(Us&& ...) && [with Us = {hpx::execution::experimental::detail::then_sender<hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, hpx::parallel::util::detail::foreach_static_partitioner<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, void>::reduce<hpx::parallel::util::projection_identity, hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >(hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >&&, hpx::parallel::util::projection_identity&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>)::<lambda()> >}; Tag = hpx::this_thread::experimental::sync_wait_t; long unsigned int ...Is = {}; Ts = {}]’
  274. ../libs/core/execution/include/hpx/execution/algorithms/detail/partial_algorithm.hpp:85:38: required from ‘constexpr auto hpx::execution::experimental::detail::operator|(U&&, partial_algorithm_base<Tag, hpx::util::pack_c<long unsigned int, Right ...>, Ts ...>) [with U = then_sender<thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, hpx::parallel::util::detail::foreach_static_partitioner<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, void>::reduce<hpx::parallel::util::projection_identity, hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >(hpx::execution::experimental::detail::thread_pool_bulk_sender<hpx::detail::async_policy, hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy>::sender<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::util::iterator_range<hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >, hpx::parallel::util::detail::chunk_size_idx_iterator<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >, hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v1::detail::for_each_iteration<hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::experimental::explicit_scheduler_executor<hpx::execution::experimental::thread_pool_policy_scheduler<hpx::detail::async_policy> >, hpx::execution::static_chunk_size>, test_for_each_explicit_sender_direct_async<hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>, std::random_access_iterator_tag>(hpx::detail::async_policy, hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>&&, std::random_access_iterator_tag)::<lambda(std::size_t&)>&, hpx::parallel::util::projection_identity> > >&&, hpx::parallel::util::projection_identity&&, test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag>)::<lambda()> >; int _concept_requires_74 = 42; typename std::enable_if<((_concept_requires_74 == 43) || (is_sender_v<U> && (! is_completion_scheduler_tag_invocable_v<hpx::execution::experimental::set_value_t, U, Tag, Ts ...>))), int>::type _concept_check_74 = 0; Tag = hpx::this_thread::experimental::sync_wait_t; long unsigned int ...Is = {}; Ts = {}]’
  275. ../libs/core/algorithms/tests/unit/algorithms/foreach_sender.cpp:78:49: required from ‘void test_for_each_explicit_sender_direct_async(Policy, ExPolicy&&, IteratorTag) [with Policy = hpx::detail::async_policy; ExPolicy = hpx::execution::detail::parallel_unsequenced_task_policy_shim<hpx::execution::parallel_policy_executor<hpx::launch>, hpx::execution::static_chunk_size>; IteratorTag = std::random_access_iterator_tag]’
  276. ../libs/core/algorithms/tests/unit/algorithms/foreach_sender.cpp:144:47: required from ‘void test_for_each_sender_direct() [with IteratorTag = std::random_access_iterator_tag]’
  277. ../libs/core/algorithms/tests/unit/algorithms/foreach_sender.cpp:163:65: required from here
  278. ../libs/core/execution/include/hpx/execution/algorithms/sync_wait.hpp:166:77: error: call of overloaded ‘get<0>(std::variant<hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> > >)’ is ambiguous
  279. 166 | return hpx::optional<single_result_type>(hpx::get<0>(
  280. | ~~~~~~~~~~~^
  281. 167 | hpx::get<result_type>(HPX_MOVE(value))));
  282. | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  283. /opt/apps/gcc/12.2.0/include/c++/12.2.0/variant:1717:5: note: candidate: ‘constexpr std::variant_alternative_t<_Np, std::variant<_Types ...> >&& std::get(const variant<_Types ...>&&) [with long unsigned int _Np = 0; _Types = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >}; variant_alternative_t<_Np, variant<_Types ...> > = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >]’
  284. 1717 | get(const variant<_Types...>&& __v)
  285. | ^~~
  286. /opt/apps/gcc/12.2.0/include/c++/12.2.0/variant:1706:5: note: candidate: ‘constexpr std::variant_alternative_t<_Np, std::variant<_Types ...> >& std::get(const variant<_Types ...>&) [with long unsigned int _Np = 0; _Types = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >}; variant_alternative_t<_Np, variant<_Types ...> > = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >]’
  287. 1706 | get(const variant<_Types...>& __v)
  288. | ^~~
  289. /opt/apps/gcc/12.2.0/include/c++/12.2.0/variant:1695:5: note: candidate: ‘constexpr std::variant_alternative_t<_Np, std::variant<_Types ...> >&& std::get(variant<_Types ...>&&) [with long unsigned int _Np = 0; _Types = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >}; variant_alternative_t<_Np, variant<_Types ...> > = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, vector<long unsigned int, allocator<long unsigned int> > >, random_access_iterator_tag> >]’
  290. 1695 | get(variant<_Types...>&& __v)
  291. | ^~~
  292. ../libs/core/datastructures/include/hpx/datastructures/variant_helper.hpp:51:13: note: candidate: ‘constexpr const typename hpx::util::at_index<I, Ts>::type&& hpx::adl_barrier::get(const std::variant<_Types ...>&&) [with long unsigned int I = 0; Ts = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >}; typename hpx::util::at_index<I, Ts>::type = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >]’
  293. 51 | get(std::variant<Ts...> const&& var) noexcept
  294. | ^~~
  295. ../libs/core/datastructures/include/hpx/datastructures/variant_helper.hpp:43:13: note: candidate: ‘constexpr typename hpx::util::at_index<I, Ts>::type&& hpx::adl_barrier::get(std::variant<_Types ...>&&) [with long unsigned int I = 0; Ts = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >}; typename hpx::util::at_index<I, Ts>::type = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >]’
  296. 43 | get(std::variant<Ts...>&& var) noexcept
  297. | ^~~
  298. ../libs/core/datastructures/include/hpx/datastructures/variant_helper.hpp:35:13: note: candidate: ‘constexpr const typename hpx::util::at_index<I, Ts>::type& hpx::adl_barrier::get(const std::variant<_Types ...>&) [with long unsigned int I = 0; Ts = {hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >}; typename hpx::util::at_index<I, Ts>::type = hpx::tuple<test::test_iterator<__gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int, std::allocator<long unsigned int> > >, std::random_access_iterator_tag> >]’
  299. 35 | get(std::variant<Ts...> const& var) noexcept
  300. | ^~~
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement