Skip to content

Instantly share code, notes, and snippets.

@taeguk
Created July 26, 2017 07:33
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save taeguk/06ba76f29e620ac468e280fb841e3ef3 to your computer and use it in GitHub Desktop.
Save taeguk/06ba76f29e620ac468e280fb841e3ef3 to your computer and use it in GitHub Desktop.
error.txt
[tkwon@bob1 hpx_build]$ make -j16 tests.performance.parallel_algorithms.local_.benchmark_partition
[ 9%] Built target hpx_init
[100%] Built target hpx
Scanning dependencies of target benchmark_partition_exe
[100%] Building CXX object tests/performance/parallel_algorithms/local/CMakeFiles/benchmark_partition_exe.dir/benchmark_partition.cpp.o
In file included from /home/tkwon/hpx/hpx/lcos/local/packaged_continuation.hpp:27:0,
from /home/tkwon/hpx/hpx/lcos/future.hpp:1483,
from /home/tkwon/hpx/hpx/runtime/actions/trigger.hpp:11,
from /home/tkwon/hpx/hpx/runtime/actions/continuation.hpp:14,
from /home/tkwon/hpx/hpx/runtime/actions/action_invoke_no_more_than.hpp:12,
from /home/tkwon/hpx/hpx/include/actions.hpp:11,
from /home/tkwon/hpx/hpx/include/lcos.hpp:11,
from /home/tkwon/hpx/hpx/hpx.hpp:10,
from /home/tkwon/hpx/tests/performance/parallel_algorithms/local/benchmark_partition.cpp:9:
/home/tkwon/hpx/hpx/parallel/executors/execution.hpp: In instantiation of ‘auto hpx::parallel::execution::detail::customization_point<hpx::parallel::execution::detail::async_execute_tag>::operator()(Executor&&, F&&, Ts&& ...) const [with Executor = hpx::parallel::execution::parallel_executor&; F = hpx::parallel::v1::detail::partition_helper::block<__gnu_cxx::__normal_iterator<int*, std::vector<int> > > (*)(hpx::parallel::v1::detail::partition_helper::block_manager<__gnu_cxx::__normal_iterator<int*, std::vector<int> >, void>&, run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&, hpx::parallel::util::projection_identity); Ts = {hpx::parallel::v1::detail::partition_helper::block_manager<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, void>&, run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&, hpx::parallel::util::projection_identity&}]’:
/home/tkwon/hpx/hpx/parallel/algorithms/partition.hpp:861:78: required from ‘static typename hpx::parallel::util::detail::algorithm_result<ExPolicy, T>::type hpx::parallel::v1::detail::partition_helper::call(ExPolicy&&, FwdIter, FwdIter, Pred&&, Proj&&) [with ExPolicy = hpx::parallel::execution::parallel_policy&; FwdIter = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; Pred = run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&; Proj = hpx::parallel::util::projection_identity; typename hpx::parallel::util::detail::algorithm_result<ExPolicy, T>::type = __gnu_cxx::__normal_iterator<int*, std::vector<int> >]’
/home/tkwon/hpx/hpx/parallel/algorithms/partition.hpp:948:46: required from ‘static typename hpx::parallel::util::detail::algorithm_result<ExPolicy, FwdIter>::type hpx::parallel::v1::detail::partition<FwdIter>::parallel(ExPolicy&&, FwdIter, FwdIter, Pred&&, Proj&&) [with ExPolicy = hpx::parallel::execution::parallel_policy&; Pred = run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&; Proj = hpx::parallel::util::projection_identity; FwdIter = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; typename hpx::parallel::util::detail::algorithm_result<ExPolicy, FwdIter>::type = __gnu_cxx::__normal_iterator<int*, std::vector<int> >]’
/home/tkwon/hpx/hpx/parallel/algorithms/detail/dispatch.hpp:356:37: required from ‘typename hpx::parallel::util::detail::algorithm_result<ExPolicy, typename hpx::parallel::v1::detail::local_algorithm_result<Result>::type>::type hpx::parallel::v1::detail::algorithm<Derived, Result>::call(ExPolicy&&, std::false_type, Args&& ...) const [with ExPolicy = hpx::parallel::execution::parallel_policy&; Args = {__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >&, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >&, run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&, hpx::parallel::util::projection_identity}; Derived = hpx::parallel::v1::detail::partition<__gnu_cxx::__normal_iterator<int*, std::vector<int> > >; Result = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; typename hpx::parallel::util::detail::algorithm_result<ExPolicy, typename hpx::parallel::v1::detail::local_algorithm_result<Result>::type>::type = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; std::false_type = std::integral_constant<bool, false>]’
/home/tkwon/hpx/hpx/parallel/algorithms/partition.hpp:1044:41: required from ‘typename hpx::parallel::util::detail::algorithm_result<ExPolicy, T>::type hpx::parallel::v1::partition(ExPolicy&&, FwdIter, FwdIter, Pred&&, Proj&&) [with ExPolicy = hpx::parallel::execution::parallel_policy&; FwdIter = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; Pred = run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&; Proj = hpx::parallel::util::projection_identity; int _concept_requires_1027 = 42; typename std::enable_if<((_concept_requires_280 == 43) || (((hpx::parallel::execution::is_execution_policy<T>::value && hpx::traits::is_iterator<Iter>::value) && hpx::parallel::traits::is_projected<Proj, BidirIter>::value) && hpx::parallel::traits::is_indirect_callable<ExPolicy, F, hpx::parallel::traits::projected<Proj, BidirIter> >::value)), int>::type _concept_check_1027 = 0; typename hpx::parallel::util::detail::algorithm_result<ExPolicy, T>::type = __gnu_cxx::__normal_iterator<int*, std::vector<int> >]’
/home/tkwon/hpx/tests/performance/parallel_algorithms/local/benchmark_partition.cpp:77:18: required from ‘double run_partition_benchmark_hpx(int, ExPolicy, FwdIter, FwdIter, Pred) [with ExPolicy = hpx::parallel::execution::parallel_policy; FwdIter = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; Pred = run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>]’
/home/tkwon/hpx/tests/performance/parallel_algorithms/local/benchmark_partition.cpp:122:36: required from ‘void run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]’
/home/tkwon/hpx/tests/performance/parallel_algorithms/local/benchmark_partition.cpp:196:46: required from here
/home/tkwon/hpx/hpx/parallel/executors/execution.hpp:340:33: error: invalid use of incomplete type ‘struct hpx::parallel::execution::detail::async_execute_not_callable<hpx::parallel::execution::parallel_executor&, hpx::parallel::v1::detail::partition_helper::block<__gnu_cxx::__normal_iterator<int*, std::vector<int> > > (*)(hpx::parallel::v1::detail::partition_helper::block_manager<__gnu_cxx::__normal_iterator<int*, std::vector<int> >, void>&, run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&, hpx::parallel::util::projection_identity), hpx::parallel::v1::detail::partition_helper::block_manager<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, void>&, run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&, hpx::parallel::util::projection_identity&>’
return async_execute(std::forward<Executor>(exec),
~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
std::forward<F>(f), std::forward<Ts>(ts)...);
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/tkwon/hpx/hpx/parallel/executors/execution.hpp:273:16: note: declaration of ‘struct hpx::parallel::execution::detail::async_execute_not_callable<hpx::parallel::execution::parallel_executor&, hpx::parallel::v1::detail::partition_helper::block<__gnu_cxx::__normal_iterator<int*, std::vector<int> > > (*)(hpx::parallel::v1::detail::partition_helper::block_manager<__gnu_cxx::__normal_iterator<int*, std::vector<int> >, void>&, run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&, hpx::parallel::util::projection_identity), hpx::parallel::v1::detail::partition_helper::block_manager<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, void>&, run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&, hpx::parallel::util::projection_identity&>’
struct async_execute_not_callable;
^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/tkwon/hpx/hpx/include/parallel_partition.hpp:10:0,
from /home/tkwon/hpx/tests/performance/parallel_algorithms/local/benchmark_partition.cpp:10:
/home/tkwon/hpx/hpx/parallel/algorithms/partition.hpp: In instantiation of ‘static typename hpx::parallel::util::detail::algorithm_result<ExPolicy, T>::type hpx::parallel::v1::detail::partition_helper::call(ExPolicy&&, FwdIter, FwdIter, Pred&&, Proj&&) [with ExPolicy = hpx::parallel::execution::parallel_policy&; FwdIter = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; Pred = run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&; Proj = hpx::parallel::util::projection_identity; typename hpx::parallel::util::detail::algorithm_result<ExPolicy, T>::type = __gnu_cxx::__normal_iterator<int*, std::vector<int> >]’:
/home/tkwon/hpx/hpx/parallel/algorithms/partition.hpp:948:46: required from ‘static typename hpx::parallel::util::detail::algorithm_result<ExPolicy, FwdIter>::type hpx::parallel::v1::detail::partition<FwdIter>::parallel(ExPolicy&&, FwdIter, FwdIter, Pred&&, Proj&&) [with ExPolicy = hpx::parallel::execution::parallel_policy&; Pred = run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&; Proj = hpx::parallel::util::projection_identity; FwdIter = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; typename hpx::parallel::util::detail::algorithm_result<ExPolicy, FwdIter>::type = __gnu_cxx::__normal_iterator<int*, std::vector<int> >]’
/home/tkwon/hpx/hpx/parallel/algorithms/detail/dispatch.hpp:356:37: required from ‘typename hpx::parallel::util::detail::algorithm_result<ExPolicy, typename hpx::parallel::v1::detail::local_algorithm_result<Result>::type>::type hpx::parallel::v1::detail::algorithm<Derived, Result>::call(ExPolicy&&, std::false_type, Args&& ...) const [with ExPolicy = hpx::parallel::execution::parallel_policy&; Args = {__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >&, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >&, run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&, hpx::parallel::util::projection_identity}; Derived = hpx::parallel::v1::detail::partition<__gnu_cxx::__normal_iterator<int*, std::vector<int> > >; Result = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; typename hpx::parallel::util::detail::algorithm_result<ExPolicy, typename hpx::parallel::v1::detail::local_algorithm_result<Result>::type>::type = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; std::false_type = std::integral_constant<bool, false>]’
/home/tkwon/hpx/hpx/parallel/algorithms/partition.hpp:1044:41: required from ‘typename hpx::parallel::util::detail::algorithm_result<ExPolicy, T>::type hpx::parallel::v1::partition(ExPolicy&&, FwdIter, FwdIter, Pred&&, Proj&&) [with ExPolicy = hpx::parallel::execution::parallel_policy&; FwdIter = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; Pred = run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&; Proj = hpx::parallel::util::projection_identity; int _concept_requires_1027 = 42; typename std::enable_if<((_concept_requires_280 == 43) || (((hpx::parallel::execution::is_execution_policy<T>::value && hpx::traits::is_iterator<Iter>::value) && hpx::parallel::traits::is_projected<Proj, BidirIter>::value) && hpx::parallel::traits::is_indirect_callable<ExPolicy, F, hpx::parallel::traits::projected<Proj, BidirIter> >::value)), int>::type _concept_check_1027 = 0; typename hpx::parallel::util::detail::algorithm_result<ExPolicy, T>::type = __gnu_cxx::__normal_iterator<int*, std::vector<int> >]’
/home/tkwon/hpx/tests/performance/parallel_algorithms/local/benchmark_partition.cpp:77:18: required from ‘double run_partition_benchmark_hpx(int, ExPolicy, FwdIter, FwdIter, Pred) [with ExPolicy = hpx::parallel::execution::parallel_policy; FwdIter = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; Pred = run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>]’
/home/tkwon/hpx/tests/performance/parallel_algorithms/local/benchmark_partition.cpp:122:36: required from ‘void run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]’
/home/tkwon/hpx/tests/performance/parallel_algorithms/local/benchmark_partition.cpp:196:46: required from here
/home/tkwon/hpx/hpx/parallel/algorithms/partition.hpp:861:52: error: no match for ‘operator=’ (operand types are ‘__gnu_cxx::__alloc_traits<std::allocator<hpx::lcos::future<hpx::parallel::v1::detail::partition_helper::block<__gnu_cxx::__normal_iterator<int*, std::vector<int> > > > > >::value_type {aka hpx::lcos::future<hpx::parallel::v1::detail::partition_helper::block<__gnu_cxx::__normal_iterator<int*, std::vector<int> > > >}’ and ‘void’)
remaining_block_futures[i] = execution::async_execute(
~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
policy.executor(), &partition_helper::partition_thread<FwdIter, Pred, Proj>,
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
block_manager, pred, proj);
~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/tkwon/hpx/hpx/runtime/actions/trigger.hpp:11:0,
from /home/tkwon/hpx/hpx/runtime/actions/continuation.hpp:14,
from /home/tkwon/hpx/hpx/runtime/actions/action_invoke_no_more_than.hpp:12,
from /home/tkwon/hpx/hpx/include/actions.hpp:11,
from /home/tkwon/hpx/hpx/include/lcos.hpp:11,
from /home/tkwon/hpx/hpx/hpx.hpp:10,
from /home/tkwon/hpx/tests/performance/parallel_algorithms/local/benchmark_partition.cpp:9:
/home/tkwon/hpx/hpx/lcos/future.hpp:879:17: note: candidate: hpx::lcos::future<R>& hpx::lcos::future<R>::operator=(hpx::lcos::future<R>&&) [with R = hpx::parallel::v1::detail::partition_helper::block<__gnu_cxx::__normal_iterator<int*, std::vector<int> > >]
future& operator=(future && other) noexcept
^~~~~~~~
/home/tkwon/hpx/hpx/lcos/future.hpp:879:17: note: no known conversion for argument 1 from ‘void’ to ‘hpx::lcos::future<hpx::parallel::v1::detail::partition_helper::block<__gnu_cxx::__normal_iterator<int*, std::vector<int> > > >&&’
In file included from /home/tkwon/hpx/hpx/lcos/local/packaged_continuation.hpp:27:0,
from /home/tkwon/hpx/hpx/lcos/future.hpp:1483,
from /home/tkwon/hpx/hpx/runtime/actions/trigger.hpp:11,
from /home/tkwon/hpx/hpx/runtime/actions/continuation.hpp:14,
from /home/tkwon/hpx/hpx/runtime/actions/action_invoke_no_more_than.hpp:12,
from /home/tkwon/hpx/hpx/include/actions.hpp:11,
from /home/tkwon/hpx/hpx/include/lcos.hpp:11,
from /home/tkwon/hpx/hpx/hpx.hpp:10,
from /home/tkwon/hpx/tests/performance/parallel_algorithms/local/benchmark_partition.cpp:9:
/home/tkwon/hpx/hpx/parallel/executors/execution.hpp: In instantiation of ‘decltype (hpx::parallel::execution::detail::async_execute_fn_helper<typename std::decay<_Tp>::type>::call(forward<Executor>(exec), forward<F>(f), (forward<Ts>)(hpx::parallel::execution::detail::async_execute::ts)...)) hpx::parallel::execution::detail::async_execute(Executor&&, F&&, Ts&& ...) [with Executor = hpx::parallel::execution::parallel_executor&; F = hpx::parallel::v1::detail::partition_helper::block<__gnu_cxx::__normal_iterator<int*, std::vector<int> > > (*)(hpx::parallel::v1::detail::partition_helper::block_manager<__gnu_cxx::__normal_iterator<int*, std::vector<int> >, void>&, run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&, hpx::parallel::util::projection_identity); Ts = {hpx::parallel::v1::detail::partition_helper::block_manager<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, void>&, run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&, hpx::parallel::util::projection_identity&}; decltype (hpx::parallel::execution::detail::async_execute_fn_helper<typename std::decay<_Tp>::type>::call(forward<Executor>(exec), forward<F>(f), (forward<Ts>)(hpx::parallel::execution::detail::async_execute::ts)...)) = hpx::parallel::execution::detail::async_execute_not_callable<hpx::parallel::execution::parallel_executor&, hpx::parallel::v1::detail::partition_helper::block<__gnu_cxx::__normal_iterator<int*, std::vector<int> > > (*)(hpx::parallel::v1::detail::partition_helper::block_manager<__gnu_cxx::__normal_iterator<int*, std::vector<int> >, void>&, run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&, hpx::parallel::util::projection_identity), hpx::parallel::v1::detail::partition_helper::block_manager<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, void>&, run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&, hpx::parallel::util::projection_identity&>; typename std::decay<_Tp>::type = hpx::parallel::execution::parallel_executor]’:
/home/tkwon/hpx/hpx/parallel/executors/execution.hpp:340:33: required from ‘auto hpx::parallel::execution::detail::customization_point<hpx::parallel::execution::detail::async_execute_tag>::operator()(Executor&&, F&&, Ts&& ...) const [with Executor = hpx::parallel::execution::parallel_executor&; F = hpx::parallel::v1::detail::partition_helper::block<__gnu_cxx::__normal_iterator<int*, std::vector<int> > > (*)(hpx::parallel::v1::detail::partition_helper::block_manager<__gnu_cxx::__normal_iterator<int*, std::vector<int> >, void>&, run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&, hpx::parallel::util::projection_identity); Ts = {hpx::parallel::v1::detail::partition_helper::block_manager<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, void>&, run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&, hpx::parallel::util::projection_identity&}]’
/home/tkwon/hpx/hpx/parallel/algorithms/partition.hpp:861:78: required from ‘static typename hpx::parallel::util::detail::algorithm_result<ExPolicy, T>::type hpx::parallel::v1::detail::partition_helper::call(ExPolicy&&, FwdIter, FwdIter, Pred&&, Proj&&) [with ExPolicy = hpx::parallel::execution::parallel_policy&; FwdIter = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; Pred = run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&; Proj = hpx::parallel::util::projection_identity; typename hpx::parallel::util::detail::algorithm_result<ExPolicy, T>::type = __gnu_cxx::__normal_iterator<int*, std::vector<int> >]’
/home/tkwon/hpx/hpx/parallel/algorithms/partition.hpp:948:46: required from ‘static typename hpx::parallel::util::detail::algorithm_result<ExPolicy, FwdIter>::type hpx::parallel::v1::detail::partition<FwdIter>::parallel(ExPolicy&&, FwdIter, FwdIter, Pred&&, Proj&&) [with ExPolicy = hpx::parallel::execution::parallel_policy&; Pred = run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&; Proj = hpx::parallel::util::projection_identity; FwdIter = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; typename hpx::parallel::util::detail::algorithm_result<ExPolicy, FwdIter>::type = __gnu_cxx::__normal_iterator<int*, std::vector<int> >]’
/home/tkwon/hpx/hpx/parallel/algorithms/detail/dispatch.hpp:356:37: required from ‘typename hpx::parallel::util::detail::algorithm_result<ExPolicy, typename hpx::parallel::v1::detail::local_algorithm_result<Result>::type>::type hpx::parallel::v1::detail::algorithm<Derived, Result>::call(ExPolicy&&, std::false_type, Args&& ...) const [with ExPolicy = hpx::parallel::execution::parallel_policy&; Args = {__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >&, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >&, run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&, hpx::parallel::util::projection_identity}; Derived = hpx::parallel::v1::detail::partition<__gnu_cxx::__normal_iterator<int*, std::vector<int> > >; Result = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; typename hpx::parallel::util::detail::algorithm_result<ExPolicy, typename hpx::parallel::v1::detail::local_algorithm_result<Result>::type>::type = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; std::false_type = std::integral_constant<bool, false>]’
/home/tkwon/hpx/hpx/parallel/algorithms/partition.hpp:1044:41: required from ‘typename hpx::parallel::util::detail::algorithm_result<ExPolicy, T>::type hpx::parallel::v1::partition(ExPolicy&&, FwdIter, FwdIter, Pred&&, Proj&&) [with ExPolicy = hpx::parallel::execution::parallel_policy&; FwdIter = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; Pred = run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&; Proj = hpx::parallel::util::projection_identity; int _concept_requires_1027 = 42; typename std::enable_if<((_concept_requires_280 == 43) || (((hpx::parallel::execution::is_execution_policy<T>::value && hpx::traits::is_iterator<Iter>::value) && hpx::parallel::traits::is_projected<Proj, BidirIter>::value) && hpx::parallel::traits::is_indirect_callable<ExPolicy, F, hpx::parallel::traits::projected<Proj, BidirIter> >::value)), int>::type _concept_check_1027 = 0; typename hpx::parallel::util::detail::algorithm_result<ExPolicy, T>::type = __gnu_cxx::__normal_iterator<int*, std::vector<int> >]’
/home/tkwon/hpx/tests/performance/parallel_algorithms/local/benchmark_partition.cpp:77:18: required from ‘double run_partition_benchmark_hpx(int, ExPolicy, FwdIter, FwdIter, Pred) [with ExPolicy = hpx::parallel::execution::parallel_policy; FwdIter = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; Pred = run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>]’
/home/tkwon/hpx/tests/performance/parallel_algorithms/local/benchmark_partition.cpp:122:36: required from ‘void run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]’
/home/tkwon/hpx/tests/performance/parallel_algorithms/local/benchmark_partition.cpp:196:46: required from here
/home/tkwon/hpx/hpx/parallel/executors/execution.hpp:322:9: error: return type ‘struct hpx::parallel::execution::detail::async_execute_not_callable<hpx::parallel::execution::parallel_executor&, hpx::parallel::v1::detail::partition_helper::block<__gnu_cxx::__normal_iterator<int*, std::vector<int> > > (*)(hpx::parallel::v1::detail::partition_helper::block_manager<__gnu_cxx::__normal_iterator<int*, std::vector<int> >, void>&, run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&, hpx::parallel::util::projection_identity), hpx::parallel::v1::detail::partition_helper::block_manager<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, void>&, run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&, hpx::parallel::util::projection_identity&>’ is incomplete
async_execute(Executor && exec, F && f, Ts &&... ts)
^~~~~~~~~~~~~
/home/tkwon/hpx/hpx/parallel/executors/execution.hpp:331:24: error: invalid use of incomplete type ‘struct hpx::parallel::execution::detail::async_execute_not_callable<hpx::parallel::execution::parallel_executor&, hpx::parallel::v1::detail::partition_helper::block<__gnu_cxx::__normal_iterator<int*, std::vector<int> > > (*)(hpx::parallel::v1::detail::partition_helper::block_manager<__gnu_cxx::__normal_iterator<int*, std::vector<int> >, void>&, run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&, hpx::parallel::util::projection_identity), hpx::parallel::v1::detail::partition_helper::block_manager<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, void>&, run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&, hpx::parallel::util::projection_identity&>’
return async_execute_fn_helper<
~~~~~~~~~~~~~~~~~~~~~~~~
typename std::decay<Executor>::type
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>::call(std::forward<Executor>(exec), std::forward<F>(f),
~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
std::forward<Ts>(ts)...);
~~~~~~~~~~~~~~~~~~~~~~~~
/home/tkwon/hpx/hpx/parallel/executors/execution.hpp:273:16: note: declaration of ‘struct hpx::parallel::execution::detail::async_execute_not_callable<hpx::parallel::execution::parallel_executor&, hpx::parallel::v1::detail::partition_helper::block<__gnu_cxx::__normal_iterator<int*, std::vector<int> > > (*)(hpx::parallel::v1::detail::partition_helper::block_manager<__gnu_cxx::__normal_iterator<int*, std::vector<int> >, void>&, run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&, hpx::parallel::util::projection_identity), hpx::parallel::v1::detail::partition_helper::block_manager<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, void>&, run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&, hpx::parallel::util::projection_identity&>’
struct async_execute_not_callable;
^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/tkwon/hpx/hpx/parallel/executors/execution.hpp:306:13: error: ‘static decltype (hpx::parallel::execution::detail::async_execute_dispatch(0, forward<TwoWayExecutor>(exec), forward<F>(f), (forward<Ts>)(hpx::parallel::execution::detail::async_execute_fn_helper<Executor, typename std::enable_if<hpx::traits::is_two_way_executor<T, void>::value, void>::type>::call::ts)...)) hpx::parallel::execution::detail::async_execute_fn_helper<Executor, typename std::enable_if<hpx::traits::is_two_way_executor<T>::value>::type>::call(TwoWayExecutor&&, F&&, Ts&& ...) [with TwoWayExecutor = hpx::parallel::execution::parallel_executor&; F = hpx::parallel::v1::detail::partition_helper::block<__gnu_cxx::__normal_iterator<int*, std::vector<int> > > (*)(hpx::parallel::v1::detail::partition_helper::block_manager<__gnu_cxx::__normal_iterator<int*, std::vector<int> >, void>&, run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&, hpx::parallel::util::projection_identity); Ts = {hpx::parallel::v1::detail::partition_helper::block_manager<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, void>&, run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&, hpx::parallel::util::projection_identity&}; Executor = hpx::parallel::execution::parallel_executor; decltype (hpx::parallel::execution::detail::async_execute_dispatch(0, forward<TwoWayExecutor>(exec), forward<F>(f), (forward<Ts>)(hpx::parallel::execution::detail::async_execute_fn_helper<Executor, typename std::enable_if<hpx::traits::is_two_way_executor<T, void>::value, void>::type>::call::ts)...)) = hpx::parallel::execution::detail::async_execute_not_callable<hpx::parallel::execution::parallel_executor&, hpx::parallel::v1::detail::partition_helper::block<__gnu_cxx::__normal_iterator<int*, std::vector<int> > > (*)(hpx::parallel::v1::detail::partition_helper::block_manager<__gnu_cxx::__normal_iterator<int*, std::vector<int> >, void>&, run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&, hpx::parallel::util::projection_identity), hpx::parallel::v1::detail::partition_helper::block_manager<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, void>&, run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>&, hpx::parallel::util::projection_identity&>]’, declared using local type ‘run_benchmark(std::size_t, int, int, IteratorTag) [with IteratorTag = std::random_access_iterator_tag; std::size_t = long unsigned int]::<lambda(const auto:1&)>’, is used but never defined [-fpermissive]
call(TwoWayExecutor && exec, F && f, Ts &&... ts)
^~~~
make[3]: *** [tests/performance/parallel_algorithms/local/CMakeFiles/benchmark_partition_exe.dir/benchmark_partition.cpp.o] Error 1
make[2]: *** [tests/performance/parallel_algorithms/local/CMakeFiles/benchmark_partition_exe.dir/all] Error 2
make[1]: *** [tests/performance/parallel_algorithms/local/CMakeFiles/tests.performance.parallel_algorithms.local_.benchmark_partition.dir/rule] Error 2
make: *** [tests.performance.parallel_algorithms.local_.benchmark_partition] Error 2
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment