From 31c254b6f59a1ad6f24034e5b728c35cacc99118 Mon Sep 17 00:00:00 2001 From: Peter Munch Date: Fri, 31 Jan 2025 18:29:55 +0100 Subject: [PATCH] Fix step_operations() for MemorySpace::Default> --- include/deal.II/lac/precondition.h | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/include/deal.II/lac/precondition.h b/include/deal.II/lac/precondition.h index d907641fe168..e7a79ec2a1ff 100644 --- a/include/deal.II/lac/precondition.h +++ b/include/deal.II/lac/precondition.h @@ -1446,14 +1446,19 @@ namespace internal } // 3) specialized implementation for inverse-diagonal preconditioner - template ::value && - !has_vmult_with_std_functions< - MatrixType, - VectorType, - dealii::DiagonalMatrix>, - VectorType> * = nullptr> + template < + typename MatrixType, + typename VectorType, + std::enable_if_t< + !IsBlockVector::value && + !std::is_same_v< + VectorType, + LinearAlgebra::distributed::Vector> && + !has_vmult_with_std_functions>, + VectorType> * = nullptr> void step_operations(const MatrixType &A, const dealii::DiagonalMatrix &preconditioner,