From: Wolfgang Bangerth Date: Tue, 21 Mar 2023 17:48:49 +0000 (-0600) Subject: Apply convertible_to concepts in parallel.h. X-Git-Tag: v9.5.0-rc1~437^2~1 X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=290dda473b9ae1fd85524fa53255c44ac3eeb284;p=dealii.git Apply convertible_to concepts in parallel.h. --- diff --git a/include/deal.II/base/parallel.h b/include/deal.II/base/parallel.h index b55a1b109a..106493dfe0 100644 --- a/include/deal.II/base/parallel.h +++ b/include/deal.II/base/parallel.h @@ -133,7 +133,10 @@ namespace parallel * module. */ template - DEAL_II_CXX20_REQUIRES((std::invocable)) + DEAL_II_CXX20_REQUIRES( + (std::invocable && + std::convertible_to, + decltype(*std::declval())>)) void transform(const InputIterator &begin_in, const InputIterator &end_in, OutputIterator out, @@ -193,7 +196,10 @@ namespace parallel typename OutputIterator, typename Function> DEAL_II_CXX20_REQUIRES( - (std::invocable)) + (std::invocable && + std::convertible_to< + std::invoke_result_t, + decltype(*std::declval())>)) void transform(const InputIterator1 &begin_in1, const InputIterator1 &end_in1, InputIterator2 in2, @@ -256,7 +262,12 @@ namespace parallel typename OutputIterator, typename Function> DEAL_II_CXX20_REQUIRES( - (std::invocable)) + (std::invocable && + std::convertible_to, + decltype(*std::declval())>)) void transform(const InputIterator1 &begin_in1, const InputIterator1 &end_in1, InputIterator2 in2, @@ -528,7 +539,10 @@ namespace parallel * module. */ template - DEAL_II_CXX20_REQUIRES((std::invocable)) + DEAL_II_CXX20_REQUIRES( + (std::invocable && + std::convertible_to, + ResultType>)) ResultType accumulate_from_subranges(const Function & f, const Iterator & begin,