From 9f2d3d3c6f56d4c37b2bdc3eff8cf5e6202d18a5 Mon Sep 17 00:00:00 2001
From: Max Kahnt <max.kahnt@fu-berlin.de>
Date: Sat, 23 Sep 2017 09:23:25 +0200
Subject: [PATCH] Add DefaultBitVector type for FieldVector. Add warning on
 fail.

---
 dune/solvers/common/defaultbitvector.hh | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/dune/solvers/common/defaultbitvector.hh b/dune/solvers/common/defaultbitvector.hh
index 7f82dbff..c8f30114 100644
--- a/dune/solvers/common/defaultbitvector.hh
+++ b/dune/solvers/common/defaultbitvector.hh
@@ -5,6 +5,7 @@
 
 #include <dune/common/bitsetvector.hh>
 #include <dune/common/fvector.hh>
+#include <dune/common/typetraits.hh>
 
 #include <dune/istl/bvector.hh>
 #include <dune/istl/multitypeblockvector.hh>
@@ -20,9 +21,16 @@ namespace Imp {
 template<class Vector>
 struct DefaultBitVector
 {
+  static_assert(AlwaysFalse<Vector>::value, "No DefaultBitVector known for this type.");
   using type = void;
 };
 
+template<class T, int i>
+struct DefaultBitVector<FieldVector<T,i>>
+{
+  using type = std::bitset<i>;
+};
+
 template<class T, class A>
 struct DefaultBitVector<BlockVector<T,A>>
 {
-- 
GitLab