diff --git a/src/enumparser.cc b/src/enumparser.cc
index 93ebb91d8405e2b541e1254e29ef568beef73490..46c2e24b8a8aae44660ec16629adea51a0686f42 100644
--- a/src/enumparser.cc
+++ b/src/enumparser.cc
@@ -9,8 +9,8 @@
 #include "enumparser.hh"
 
 template <class Enum>
-typename Dune::enable_if<
-    !Dune::IsBaseOf<Dune::NotImplemented, StringToEnum<Enum>>::value,
+typename std::enable_if<
+    !std::is_base_of<Dune::NotImplemented, StringToEnum<Enum>>::value,
     std::istream &>::type
 operator>>(std::istream &lhs, Enum &e) {
   std::string s;
diff --git a/src/enumparser.hh b/src/enumparser.hh
index 877c0d588ed5685e4f5788085397bf243c477baf..34f1c5830f6063d144d6a58dfd092b8cf2896122 100644
--- a/src/enumparser.hh
+++ b/src/enumparser.hh
@@ -3,7 +3,7 @@
 
 // Copyright Carsten Graeser 2012
 
-#include <dune/common/typetraits.hh>
+#include <type_traits>
 
 #include <dune/solvers/solvers/solver.hh>
 
@@ -28,8 +28,8 @@ template <> struct StringToEnum<Config::PatchType> {
 };
 
 template <class Enum>
-typename Dune::enable_if<
-    !Dune::IsBaseOf<Dune::NotImplemented, StringToEnum<Enum>>::value,
+typename std::enable_if<
+    !std::is_base_of<Dune::NotImplemented, StringToEnum<Enum>>::value,
     std::istream &>::type
 operator>>(std::istream &lhs, Enum &e);
 #endif