diff --git a/dune/solvers/norms/h1seminorm.hh b/dune/solvers/norms/h1seminorm.hh
index 93152aaa3f7b219ea4b5f85e82655c70f1a91a81..f0f6146c2c11f2ac92170d4ca972c420efa229e3 100644
--- a/dune/solvers/norms/h1seminorm.hh
+++ b/dune/solvers/norms/h1seminorm.hh
@@ -33,8 +33,8 @@ public:
 
 		for (size_t i=0; i<matrix_->N(); i++)
 		{
-			typename Dune::BCRSMatrix<Dune::FieldMatrix<double,1,1> >::row_type::const_iterator cIt    = (*matrix_)[i].begin();
-			typename Dune::BCRSMatrix<Dune::FieldMatrix<double,1,1> >::row_type::const_iterator cEndIt = (*matrix_)[i].end();
+      auto cIt    = (*matrix_)[i].begin();
+      auto cEndIt  = (*matrix_)[i].end();
 
       typename VectorType::block_type differ_i = u1[i] - u2[i];
 			for (; cIt!=cEndIt; ++cIt)
@@ -58,8 +58,8 @@ public:
 
         for (size_t i=0; i<matrix_->N(); i++) {
 
-            typename Dune::BCRSMatrix<Dune::FieldMatrix<double,1,1> >::row_type::const_iterator cIt    = (*matrix_)[i].begin();
-            typename Dune::BCRSMatrix<Dune::FieldMatrix<double,1,1> >::row_type::const_iterator cEndIt = (*matrix_)[i].end();
+            auto cIt    = (*matrix_)[i].begin();
+            auto cEndIt = (*matrix_)[i].end();
 
             for (; cIt!=cEndIt; ++cIt)
                 sum += u[i]*u[cIt.index()] * (*cIt);