diff --git a/dumux/implicit/common/implicitlocaljacobian.hh b/dumux/implicit/common/implicitlocaljacobian.hh
index 8a21d9cc36d6cf2c3a7e2e0502bd59199f8fecb8..6feec0db06f6f611bcffe4d533b1d6bfed061e1d 100644
--- a/dumux/implicit/common/implicitlocaljacobian.hh
+++ b/dumux/implicit/common/implicitlocaljacobian.hh
@@ -349,9 +349,9 @@ protected:
      */
     void reset_()
     {
-        for (int i = 0; i < A_.N(); ++ i) {
+        for (unsigned int i = 0; i < A_.N(); ++ i) {
             storageJacobian_[i] = 0.0;
-            for (int j = 0; j < A_.M(); ++ j) {
+            for (unsigned int j = 0; j < A_.M(); ++ j) {
                 A_[i][j] = 0.0;
             }
         }
diff --git a/dumux/implicit/common/implicitlocalresidual.hh b/dumux/implicit/common/implicitlocalresidual.hh
index 36511535886b2bd517894d4e39189e210ff467a7..07461ce3d2ad531e307b1804ab880c53934555b9 100644
--- a/dumux/implicit/common/implicitlocalresidual.hh
+++ b/dumux/implicit/common/implicitlocalresidual.hh
@@ -213,7 +213,7 @@ public:
         Valgrind::CheckDefined(curVolVars);
 
 #if !defined NDEBUG && HAVE_VALGRIND
-        for (int i = 0; i < prevVolVars.size(); i++) {
+        for (unsigned int i = 0; i < prevVolVars.size(); i++) {
             prevVolVars[i].checkDefined();
             curVolVars[i].checkDefined();
         }
diff --git a/dumux/implicit/common/implicitmodel.hh b/dumux/implicit/common/implicitmodel.hh
index 1bb905fa785b215f4979ce894aafc2154abdc526..417783256be13e8039402f9565ca984c30c35a2b 100644
--- a/dumux/implicit/common/implicitmodel.hh
+++ b/dumux/implicit/common/implicitmodel.hh
@@ -686,7 +686,7 @@ public:
             def[eqIdx] = writer.allocateManagedBuffer(numDofs);
         }
 
-        for (int globalIdx = 0; globalIdx < u.size(); globalIdx++)
+        for (unsigned int globalIdx = 0; globalIdx < u.size(); globalIdx++)
         {
             for (int eqIdx = 0; eqIdx < numEq; ++eqIdx) 
             {
@@ -933,7 +933,7 @@ protected:
         if (isBox)
         {
             // divide all primary variables by the volume of their boxes
-            for (int i = 0; i < uCur_.size(); ++i) {
+            for (unsigned int i = 0; i < uCur_.size(); ++i) {
                 uCur_[i] /= boxVolume(i);
             }
         }