diff --git a/dune/common/dotproduct.hh b/dune/common/dotproduct.hh
index 21cddba091b7a1da173be50998c2b11e2abb3777..bd54a8378b7b84dc820acb006668d3397bbf2146 100644
--- a/dune/common/dotproduct.hh
+++ b/dune/common/dotproduct.hh
@@ -40,7 +40,7 @@ namespace Dune {
    */
   template<class A, class B>
   auto
-  dot(const A & a, const B & b) -> typename std::enable_if<!IsVector<A>::value && !is_same<typename FieldTraits<A>::field_type,typename FieldTraits<A>::real_type> ::value, decltype(conj(a)*b)>::type
+  dot(const A & a, const B & b) -> typename std::enable_if<!IsVector<A>::value && !std::is_same<typename FieldTraits<A>::field_type,typename FieldTraits<A>::real_type> ::value, decltype(conj(a)*b)>::type
   {
     return conj(a)*b;
   }
@@ -57,7 +57,7 @@ namespace Dune {
   // fundamental type with A being a real type
   template<class A, class B>
   auto
-  dot(const A & a, const B & b) -> typename std::enable_if<!IsVector<A>::value && is_same<typename FieldTraits<A>::field_type,typename FieldTraits<A>::real_type>::value, decltype(a*b)>::type
+  dot(const A & a, const B & b) -> typename std::enable_if<!IsVector<A>::value && std::is_same<typename FieldTraits<A>::field_type,typename FieldTraits<A>::real_type>::value, decltype(a*b)>::type
   {
     return a*b;
   }
diff --git a/dune/common/parallel/communicator.hh b/dune/common/parallel/communicator.hh
index 975f177f1084c9d3f4bf4f589ed668019ff24668..84d02fff608f7d3d7322c9c7926d869585e24518 100644
--- a/dune/common/parallel/communicator.hh
+++ b/dune/common/parallel/communicator.hh
@@ -464,7 +464,7 @@ namespace Dune
      * @param interface The interface that defines what indices are to be communicated.
      */
     template<class Data, class Interface>
-    typename std::enable_if<is_same<SizeOne,typename CommPolicy<Data>::IndexedTypeFlag>::value, void>::type
+    typename std::enable_if<std::is_same<SizeOne,typename CommPolicy<Data>::IndexedTypeFlag>::value, void>::type
     build(const Interface& interface);
 
     /**
@@ -1137,7 +1137,7 @@ namespace Dune
   }
 
   template<class Data, class Interface>
-  typename std::enable_if<is_same<SizeOne, typename CommPolicy<Data>::IndexedTypeFlag>::value, void>::type
+  typename std::enable_if<std::is_same<SizeOne, typename CommPolicy<Data>::IndexedTypeFlag>::value, void>::type
   BufferedCommunicator::build(const Interface& interface)
   {
     interfaces_=interface.interfaces();
diff --git a/dune/common/test/fvectortest.cc b/dune/common/test/fvectortest.cc
index d7d556d4b6175d60a543ee0d2f19cc35a4e6b494..6c771d360bd3da5b2dfae584007716243b759917 100644
--- a/dune/common/test/fvectortest.cc
+++ b/dune/common/test/fvectortest.cc
@@ -36,22 +36,22 @@ struct FieldVectorMainTestCommons
 
     // test exported types
     static_assert(
-      Dune::is_same<ft,typename FieldVector<ft,d>::value_type>::value,
+      std::is_same<ft,typename FieldVector<ft,d>::value_type>::value,
       "FieldVector::value_type is not the correct type"
     );
 
     // test traits
     static_assert(
-      ( Dune::is_same< typename Dune::FieldTraits<
+      ( std::is_same< typename Dune::FieldTraits<
                 FieldVector<ft,d> >::field_type, ft >::value ),
       "FieldTraits<FieldVector> yields wrong field_type"
       );
     static_assert(
-      ( Dune::is_same< typename Dune::FieldTraits<ft>::real_type, rt >::value ),
+      ( std::is_same< typename Dune::FieldTraits<ft>::real_type, rt >::value ),
       "FieldTraits<field_type> yields wrong real_type"
       );
     static_assert(
-      ( Dune::is_same< typename Dune::FieldTraits<
+      ( std::is_same< typename Dune::FieldTraits<
                 FieldVector<ft,d> >::real_type, rt >::value ),
       "FieldTraits<FieldVector> yields wrong real_type"
       );
@@ -258,7 +258,7 @@ struct DotProductTest
     DUNE_UNUSED const rt myEps = Epsilon<rt>::value();
 
     static_assert(
-      ( Dune::is_same< typename Dune::FieldTraits<rt>::real_type, rt>::value ),
+      ( std::is_same< typename Dune::FieldTraits<rt>::real_type, rt>::value ),
       "DotProductTest requires real data type as template parameter!"
       );
 
@@ -268,8 +268,8 @@ struct DotProductTest
 
     std::cout << __func__ << "\t \t ( " << Dune::className(one) << " and " << Dune::className(iVec) << ")" << std::endl;
 
-    const bool isRealOne = Dune::is_same<typename Dune::FieldTraits<rt>::field_type,typename Dune::FieldTraits<rt>::real_type>::value;
-    const bool isRealIVec = Dune::is_same<typename Dune::FieldTraits<ct>::field_type,typename Dune::FieldTraits<ct>::real_type> ::value;
+    const bool isRealOne = std::is_same<typename Dune::FieldTraits<rt>::field_type,typename Dune::FieldTraits<rt>::real_type>::value;
+    const bool isRealIVec = std::is_same<typename Dune::FieldTraits<ct>::field_type,typename Dune::FieldTraits<ct>::real_type> ::value;
     static_assert(isRealOne,"1-vector expected to be real");
     static_assert(!isRealIVec,"i-vector expected to be complex");
 
@@ -326,7 +326,7 @@ struct DotProductTest<rt, d, false>
     DUNE_UNUSED const rt myEps = Epsilon<rt>::value();
 
     static_assert(
-      ( Dune::is_same< typename Dune::FieldTraits<rt>::real_type, rt>::value ),
+      ( std::is_same< typename Dune::FieldTraits<rt>::real_type, rt>::value ),
       "DotProductTest requires real data type as template parameter!"
       );
 
@@ -334,7 +334,7 @@ struct DotProductTest<rt, d, false>
 
     std::cout << __func__ << "\t \t ( " << Dune::className(one) << " only)" << std::endl;
 
-    const bool isRealOne = Dune::is_same<typename Dune::FieldTraits<rt>::field_type,typename Dune::FieldTraits<rt>::real_type>::value;
+    const bool isRealOne = std::is_same<typename Dune::FieldTraits<rt>::field_type,typename Dune::FieldTraits<rt>::real_type>::value;
     static_assert(isRealOne,"1-vector expected to be real");
 
     rt result = rt();
diff --git a/dune/common/test/tupleutilitytest.cc b/dune/common/test/tupleutilitytest.cc
index 83ee0b2312d980ba7cd723a87f1b699424f062ad..c91c7a1f765fb12c45727f939f8d21928b63592c 100644
--- a/dune/common/test/tupleutilitytest.cc
+++ b/dune/common/test/tupleutilitytest.cc
@@ -61,7 +61,7 @@ typedef std::tuple<char, float> MyTuple2;
 typedef std::tuple<MyTuple, MyTuple2> MyTupleTuple;
 typedef Dune::FlattenTuple<MyTupleTuple>::type MyTupleTupleFlat1;
 typedef std::tuple<int, unsigned, double, char, float> MyTupleTupleFlat2;
-static_assert((Dune::is_same<MyTupleTupleFlat1, MyTupleTupleFlat2>::value),
+static_assert((std::is_same<MyTupleTupleFlat1, MyTupleTupleFlat2>::value),
               "FlattenTuples failed!");