From 5ff36db37834a619715636c8948c2b4ab4662c1f Mon Sep 17 00:00:00 2001 From: Oliver Sander <oliver.sander@tu-dresden.de> Date: Wed, 26 Mar 2025 15:53:53 +0100 Subject: [PATCH] Replace std::result_of by std::invoke_result_t The former is deprecated, and not supported by all compilers anymore. --- dune/solvers/iterationsteps/blockgssteps.hh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/dune/solvers/iterationsteps/blockgssteps.hh b/dune/solvers/iterationsteps/blockgssteps.hh index 7ed5a385..f15e7f70 100644 --- a/dune/solvers/iterationsteps/blockgssteps.hh +++ b/dune/solvers/iterationsteps/blockgssteps.hh @@ -3,6 +3,7 @@ #include <cassert> #include <functional> +#include <type_traits> #include <dune/common/parametertree.hh> @@ -181,7 +182,7 @@ template <class LinearSolver> auto truncateSymmetrically(LinearSolver&& linearSolver) { return [linearSolver = std::move(linearSolver) ]( const auto& m, const auto& b, const auto& ignore) { - using Return = typename std::result_of<LinearSolver(decltype(m), decltype(b))>::type; + using Return = std::invoke_result_t<LinearSolver, decltype(m), decltype(b)>; if (ignore.all()) return Return(0); -- GitLab