diff --git a/src/solverfactory.cc b/src/solverfactory.cc
index dc0be6cfee21cfaec20d4f672a306260ae3d89b0..0bdc3d3b3d910694458668961a9c44ed6ec4ce71 100644
--- a/src/solverfactory.cc
+++ b/src/solverfactory.cc
@@ -30,7 +30,7 @@ SolverFactory<dim, BlockProblem, Grid>::SolverFactory(
   linearIterationStep.setSmoother(&linearPresmoother, &linearPostsmoother);
 
   // transfer operators
-  for (auto &x : transferOperators)
+  for (auto &&x : transferOperators)
     x = new CompressedMultigridTransfer<Vector>;
   TransferOperatorAssembler<Grid>(grid)
       .assembleOperatorPointerHierarchy(transferOperators);
@@ -45,7 +45,7 @@ SolverFactory<dim, BlockProblem, Grid>::SolverFactory(
 
 template <size_t dim, class BlockProblem, class Grid>
 SolverFactory<dim, BlockProblem, Grid>::~SolverFactory() {
-  for (auto &x : transferOperators)
+  for (auto &&x : transferOperators)
     delete x;
 
   delete multigridStep;