diff --git a/Geo/GModelIO_Geo.cpp b/Geo/GModelIO_Geo.cpp
index 3a5812daf6434a160ceacf120e0455e6600cc43b..206bd826d389cc5036afbd9fd22ebcc5384c5fd6 100644
--- a/Geo/GModelIO_Geo.cpp
+++ b/Geo/GModelIO_Geo.cpp
@@ -170,7 +170,7 @@ int GModel::importGEOInternals()
         }
         std::list<GEdge*> b[4];
         for(int j = 0; j < 4; j++){
-          for(int k = 0; k < s->compoundBoundary[j].size(); k++){
+          for(unsigned int k = 0; k < s->compoundBoundary[j].size(); k++){
             GEdge *ge = getEdgeByTag(s->compoundBoundary[j][k]);
             if(ge) b[j].push_back(ge);
           }
diff --git a/Geo/GModelIO_Mesh.cpp b/Geo/GModelIO_Mesh.cpp
index fe360b96af57a4ad8e6903c69028f796de953c4d..03745710437cd7d223c7bdf4d2d5bdf1c37b284e 100644
--- a/Geo/GModelIO_Mesh.cpp
+++ b/Geo/GModelIO_Mesh.cpp
@@ -890,7 +890,7 @@ int GModel::writeDistanceMSH(const std::string &name, double version, bool binar
 	  SPoint3 p3 (v3->x(),v3->y(),v3->z());
 	  signedDistancesPointsTriangle(iDistances, iClosePts, pts, p1,p2,p3);
 	}
-	for (int kk = 0; kk< pts.size(); kk++) {
+	for (unsigned int kk = 0; kk< pts.size(); kk++) {
 	  if (std::abs(iDistances[kk]) < distances[kk] ) 
 	    distances[kk] = std::abs(iDistances[kk]);
 	}
@@ -1026,7 +1026,7 @@ int GModel::writeDistanceMSH(const std::string &name, double version, bool binar
 	  dist.push_back(*(it->second));
 	}
 	fprintf(f3,"){");
-	for (int i=0; i<dist.size(); i++){
+	for (unsigned int i = 0; i < dist.size(); i++){
 	  if (i) fprintf(f3,",%g", dist[i]);
 	  else fprintf(f3,"%g", dist[i]);
 	}   
@@ -1056,7 +1056,7 @@ int GModel::writeDistanceMSH(const std::string &name, double version, bool binar
 	  dist.push_back(it->second);
 	}
 	fprintf(f4,"){");
-	for (int i=0; i<dist.size(); i++){
+	for (unsigned int i = 0; i < dist.size(); i++){
 	  if (i) fprintf(f4,",%g", dist[i]);
 	  else fprintf(f4,"%g", dist[i]);
 	}   
diff --git a/Geo/MElement.cpp b/Geo/MElement.cpp
index 39dc4f2feddefe0b39f9f016bc534d0aff42b25b..47fba51064cb777acd2f8d20d2e4bc3f0347bc53 100644
--- a/Geo/MElement.cpp
+++ b/Geo/MElement.cpp
@@ -429,7 +429,7 @@ void MElement::writeMSH(FILE *fp, double version, bool binary, int num,
     int blob[60] = {type, 1, numTags, num ? num : _num, abs(physical), elementary, 
                     1 + numGhosts, _partition};
     if(ghosts)
-      for(unsigned int i = 0; i < numGhosts; i++) blob[8 + i] = -(*ghosts)[i];
+      for(int i = 0; i < numGhosts; i++) blob[8 + i] = -(*ghosts)[i];
     fwrite(blob, sizeof(int), 4 + numTags, fp);
   }