diff --git a/Parser/Gmsh.tab.cpp b/Parser/Gmsh.tab.cpp
index 55c3ee014dd9acb88daf2a8d5d06523fcfa5a80b..8e1d4527d4caaff0798329ff292d63a750d82f6b 100644
--- a/Parser/Gmsh.tab.cpp
+++ b/Parser/Gmsh.tab.cpp
@@ -7479,7 +7479,7 @@ yyreduce:
     List_T *temp = ListOfDouble2ListOfInt((yyvsp[(3) - (7)].l));
     std::vector<int> domain;
     
-    for (unsigned int i = 0; i < List_Nbr(temp); i++){
+    for (int i = 0; i < List_Nbr(temp); i++){
       int item = 0;
       List_Read(temp, i, &item);
       domain.push_back(item);
@@ -7489,7 +7489,7 @@ yyreduce:
     
     List_T *temp2 = ListOfDouble2ListOfInt((yyvsp[(5) - (7)].l));
     std::vector<int> subdomain;
-    for (unsigned int i = 0; i < List_Nbr(temp2); i++){
+    for (int i = 0; i < List_Nbr(temp2); i++){
       int item = 0;
       List_Read(temp2, i, &item);
       subdomain.push_back(item);
@@ -7513,7 +7513,7 @@ yyreduce:
     List_T *temp = ListOfDouble2ListOfInt((yyvsp[(7) - (11)].l));
     std::vector<int> domain;
     
-    for (unsigned int i = 0; i < List_Nbr(temp); i++){
+    for (int i = 0; i < List_Nbr(temp); i++){
       int item = 0;
       List_Read(temp, i, &item);
       domain.push_back(item);
@@ -7523,7 +7523,7 @@ yyreduce:
     
     List_T *temp2 = ListOfDouble2ListOfInt((yyvsp[(9) - (11)].l));
     std::vector<int> subdomain;
-    for (unsigned int i = 0; i < List_Nbr(temp2); i++){
+    for (int i = 0; i < List_Nbr(temp2); i++){
       int item = 0;
       List_Read(temp2, i, &item);
       subdomain.push_back(item);
@@ -7549,7 +7549,7 @@ yyreduce:
     List_T *temp = ListOfDouble2ListOfInt((yyvsp[(7) - (11)].l));
     std::vector<int> domain;
     
-    for (unsigned int i = 0; i < List_Nbr(temp); i++){
+    for (int i = 0; i < List_Nbr(temp); i++){
       int item = 0;
       List_Read(temp, i, &item);
       domain.push_back(item);
@@ -7559,7 +7559,7 @@ yyreduce:
     
     List_T *temp2 = ListOfDouble2ListOfInt((yyvsp[(9) - (11)].l));
     std::vector<int> subdomain;
-    for (unsigned int i = 0; i < List_Nbr(temp2); i++){
+    for (int i = 0; i < List_Nbr(temp2); i++){
       int item = 0;
       List_Read(temp2, i, &item);
       subdomain.push_back(item);
diff --git a/Parser/Gmsh.y b/Parser/Gmsh.y
index df2256233d7333f89c45caf55868a5e98892018e..6f34f86017f795515fd54a05da0ab1989b197a01 100644
--- a/Parser/Gmsh.y
+++ b/Parser/Gmsh.y
@@ -3274,7 +3274,7 @@ Homology :
     List_T *temp = ListOfDouble2ListOfInt($3);
     std::vector<int> domain;
     
-    for (unsigned int i = 0; i < List_Nbr(temp); i++){
+    for (int i = 0; i < List_Nbr(temp); i++){
       int item = 0;
       List_Read(temp, i, &item);
       domain.push_back(item);
@@ -3284,7 +3284,7 @@ Homology :
     
     List_T *temp2 = ListOfDouble2ListOfInt($5);
     std::vector<int> subdomain;
-    for (unsigned int i = 0; i < List_Nbr(temp2); i++){
+    for (int i = 0; i < List_Nbr(temp2); i++){
       int item = 0;
       List_Read(temp2, i, &item);
       subdomain.push_back(item);
@@ -3306,7 +3306,7 @@ Homology :
     List_T *temp = ListOfDouble2ListOfInt($7);
     std::vector<int> domain;
     
-    for (unsigned int i = 0; i < List_Nbr(temp); i++){
+    for (int i = 0; i < List_Nbr(temp); i++){
       int item = 0;
       List_Read(temp, i, &item);
       domain.push_back(item);
@@ -3316,7 +3316,7 @@ Homology :
     
     List_T *temp2 = ListOfDouble2ListOfInt($9);
     std::vector<int> subdomain;
-    for (unsigned int i = 0; i < List_Nbr(temp2); i++){
+    for (int i = 0; i < List_Nbr(temp2); i++){
       int item = 0;
       List_Read(temp2, i, &item);
       subdomain.push_back(item);
@@ -3340,7 +3340,7 @@ Homology :
     List_T *temp = ListOfDouble2ListOfInt($7);
     std::vector<int> domain;
     
-    for (unsigned int i = 0; i < List_Nbr(temp); i++){
+    for (int i = 0; i < List_Nbr(temp); i++){
       int item = 0;
       List_Read(temp, i, &item);
       domain.push_back(item);
@@ -3350,7 +3350,7 @@ Homology :
     
     List_T *temp2 = ListOfDouble2ListOfInt($9);
     std::vector<int> subdomain;
-    for (unsigned int i = 0; i < List_Nbr(temp2); i++){
+    for (int i = 0; i < List_Nbr(temp2); i++){
       int item = 0;
       List_Read(temp2, i, &item);
       subdomain.push_back(item);