From 95ce3cd0bd7ba54b7098d15f49e9df583847badf Mon Sep 17 00:00:00 2001
From: Oliver Sander <oliver.sander@tu-dresden.de>
Date: Mon, 20 Sep 2021 17:27:06 +0200
Subject: [PATCH] Do not hardwire BitsetVector as default in IterationStep

Use DefaultBitVector_t instead.  That way, the default has to be
overridden less frequently.
---
 CHANGELOG.md                                 | 5 +++++
 dune/solvers/iterationsteps/iterationstep.hh | 4 ++--
 2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 9789e01f..ccf726ff 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -7,6 +7,11 @@
 
 - The internal matrix of the`EnergyNorm` can now be accessed by `getMatrix()`.
 
+- The default `BitVectorType` of the class `IterationStep` is now
+  `Solvers::DefaultBitVector_t<VectorType>` rather than `Dune::BitSetVector`.
+  This should do the right thing in more situations, while being fully
+  backward-compatible.
+
 - `codespell` spell checker is now active for automated spell checking in the Gitlab CI. 
   To exclude false positives add the words to the `--ignore-words-list` in `.gitlab-ci.yml`.
 
diff --git a/dune/solvers/iterationsteps/iterationstep.hh b/dune/solvers/iterationsteps/iterationstep.hh
index 7faaff30..9d63a5c7 100644
--- a/dune/solvers/iterationsteps/iterationstep.hh
+++ b/dune/solvers/iterationsteps/iterationstep.hh
@@ -6,8 +6,8 @@
 #include <vector>
 #include <string>
 
-#include <dune/common/bitsetvector.hh>
 #include <dune/solvers/common/canignore.hh>
+#include <dune/solvers/common/defaultbitvector.hh>
 #include <dune/solvers/common/numproc.hh>
 
 namespace Dune {
@@ -15,7 +15,7 @@ namespace Dune {
 namespace Solvers {
 
     //! Base class for iteration steps being called by an iterative solver
-template<class VectorType, class BitVectorType = Dune::BitSetVector<VectorType::block_type::dimension> >
+template<class VectorType, class BitVectorType = Solvers::DefaultBitVector_t<VectorType> >
 class IterationStep : virtual public NumProc, public CanIgnore<BitVectorType>
     {
     public:
-- 
GitLab