diff --git a/dumux/io/grid/gridmanager_sp.hh b/dumux/io/grid/gridmanager_sp.hh
index 0cce7968b324cedbfcc3e7399ec8cbee7fd2ce80..1d10a91670e7dcdf78ae7c3b3b47bd748bf110a7 100644
--- a/dumux/io/grid/gridmanager_sp.hh
+++ b/dumux/io/grid/gridmanager_sp.hh
@@ -34,8 +34,6 @@
 #include <dumux/io/grid/gridmanager_base.hh>
 #endif
 
-#include <dumux/common/boundaryflag.hh>
-
 namespace Dumux {
 
 #if HAVE_DUNE_SPGRID
@@ -99,25 +97,6 @@ public:
     }
 };
 
-//! dune-subgrid doesn't have this implemented
-template<int dim, class HostGrid>
-class BoundaryFlag<Dune::SubGrid<dim, HostGrid>>
-{
-public:
-    BoundaryFlag() : flag_(-1) {}
-
-    template<class Intersection>
-    BoundaryFlag(const Intersection& i) : flag_(-1) {}
-
-    using value_type = int;
-
-    value_type get() const
-    { DUNE_THROW(Dune::NotImplemented, "Sub-grid doesn't implement boundary segment indices!"); }
-
-private:
-    int flag_;
-};
-
 #endif // HAVE_DUNE_SPGRID
 
 } // end namespace Dumux
diff --git a/dumux/io/grid/subgridmanager.hh b/dumux/io/grid/subgridmanager.hh
index d87d4b1506ee68159dea481c72da5ac3ad940a8f..8c4c8cb6cfb57604f7919a325738bdbdd470cea8 100644
--- a/dumux/io/grid/subgridmanager.hh
+++ b/dumux/io/grid/subgridmanager.hh
@@ -33,6 +33,7 @@
 #include <dune/grid/io/file/dgfparser/dgfwriter.hh>
 
 #include <dumux/common/parameters.hh>
+#include <dumux/common/boundaryflag.hh>
 
 namespace Dumux {
 
@@ -99,6 +100,25 @@ public:
     }
 };
 
+//! dune-subgrid doesn't have this implemented
+template<int dim, class HostGrid>
+class BoundaryFlag<Dune::SubGrid<dim, HostGrid>>
+{
+public:
+    BoundaryFlag() : flag_(-1) {}
+
+    template<class Intersection>
+    BoundaryFlag(const Intersection& i) : flag_(-1) {}
+
+    using value_type = int;
+
+    value_type get() const
+    { DUNE_THROW(Dune::NotImplemented, "Sub-grid doesn't implement boundary segment indices!"); }
+
+private:
+    int flag_;
+};
+
 } // end namespace Dumux
 
 #endif // HAVE_DUNE_SUBGRID