diff --git a/dune/common/parallel/indexset.hh b/dune/common/parallel/indexset.hh
index 164a6fbea7b33d6e835d176612bbcc74915dbba8..f2523193cc80e8b6d79131b4d86b8d150475b2d0 100644
--- a/dune/common/parallel/indexset.hh
+++ b/dune/common/parallel/indexset.hh
@@ -74,7 +74,7 @@ namespace Dune
   bool operator >=(const IndexPair<TG,TL>&, const TG&);
 
   template<typename T>
-  class MPITraits;
+  struct MPITraits;
 
   /**
    * @brief A pair consisting of a global and local index.
@@ -95,7 +95,7 @@ namespace Dune
     friend bool operator> <>(const IndexPair<TG,TL>&, const TG &);
     friend bool operator<=<>(const IndexPair<TG,TL>&, const TG &);
     friend bool operator>=<>(const IndexPair<TG,TL>&, const TG &);
-    friend class MPITraits<IndexPair<TG,TL> >;
+    friend struct MPITraits<IndexPair<TG,TL> >;
 
   public:
     /**
diff --git a/dune/common/parallel/plocalindex.hh b/dune/common/parallel/plocalindex.hh
index ec4ec822d1c5de78681b4902e0c481820e9612f7..adeaa378dbb992713cba26ddff4182f316ed93e0 100644
--- a/dune/common/parallel/plocalindex.hh
+++ b/dune/common/parallel/plocalindex.hh
@@ -48,7 +48,7 @@ namespace Dune
   {
 #if HAVE_MPI
     // friend declaration needed for MPITraits
-    friend class MPITraits<ParallelLocalIndex<T> >;
+    friend struct MPITraits<ParallelLocalIndex<T> >;
 #endif
     friend std::ostream& operator<<<>(std::ostream& os, const ParallelLocalIndex<T>& index);