diff --git a/tracy/tracy/src/soleilcommon.cc b/tracy/tracy/src/soleilcommon.cc
index 311027a92a94c37054f0b02b5fd2a7eda490de8b..2faca815503b73e14bbf5f50207017dfef2c477e 100644
--- a/tracy/tracy/src/soleilcommon.cc
+++ b/tracy/tracy/src/soleilcommon.cc
@@ -539,19 +539,19 @@ void Read_Lattice(char *fic)
 long get_bpm_number(void)
 {
   int i;
-  long nbpm = 0L;
+  int nbpm = 0;
   CellType Cell;
 
-  for (i = 0; i <= globval.Cell_nLoc; i++)
+  for (i = 0; i < globval.Cell_nLoc; i++)
   {
     getelem(i, &Cell);  /* get element */
     if (strncmp(Cell.Elem.PName, "bpm", 3) == 0)
     {
-      globval.bpm_list[nbpm] = i;
+      globval.bpm_list[nbpm] =  (long) i;
       nbpm++;
     }
   }
-  return nbpm;
+  return (long) nbpm;
 }
 
 /****************************************************************************/
@@ -583,19 +583,19 @@ long get_bpm_number(void)
 long get_hcorr_number(void)
 {
   int i;
-  long nb = 0L;
+  int nb = 0;
   CellType Cell;
 
-  for (i = 0; i <= globval.Cell_nLoc; i++)
+  for (i = 0; i < globval.Cell_nLoc; i++)
   {
     getelem(i, &Cell);  /* get element */
     if (strncmp(Cell.Elem.PName, "ch", 2) == 0)
     {
-      globval.hcorr_list[nb] = i;
+      globval.hcorr_list[nb] = (long)i;
       nb++;
     }
   }
-  return nb;
+  return (long) nb;
 }
 
 /****************************************************************************/
@@ -627,7 +627,7 @@ long get_hcorr_number(void)
 long get_vcorr_number(void)
 {
   int i;
-  long nb = 0L;
+  int nb = 0;
   CellType Cell;
 
   for (i = 0; i <= globval.Cell_nLoc; i++)
@@ -635,11 +635,11 @@ long get_vcorr_number(void)
     getelem(i, &Cell);  /* get element */
     if (strncmp(Cell.Elem.PName, "cv", 2) == 0)
     {
-      globval.vcorr_list[nb] = i;
+      globval.vcorr_list[nb] = (long) i;
       nb++;
     }
   }
-  return nb;
+  return (long) nb;
 }
 
 /****************************************************************************/