Index: /cpp/frams/_demos/simil_test.cpp
===================================================================
--- /cpp/frams/_demos/simil_test.cpp	(revision 351)
+++ /cpp/frams/_demos/simil_test.cpp	(revision 352)
@@ -97,5 +97,5 @@
     }
 
-    char *params[] = {"<w_dP>", "<w_dDEG>", "<w_dNEU>", "<w_dGEO>"};
+    const char *params[] = {"<w_dP>", "<w_dDEG>", "<w_dNEU>", "<w_dGEO>"};
     for (int i = 0; i < M.GetNOFactors(); i++)
     {
@@ -160,16 +160,16 @@
     // create the empty array of similarities
     aaSimil = new pDouble [pvGenos->size()];
-    for (unsigned int k = 0; k < pvGenos->size(); k++)
+    for (int k = 0; k < (int) pvGenos->size(); k++)
     {
         aaSimil[k] = new double [pvGenos->size()];
-        for (unsigned int l = 0; l < pvGenos->size(); l++)
+        for (int l = 0; l < (int) pvGenos->size(); l++)
             aaSimil[k][l] = 0.0;
     }
 
     // compute and remember similarities
-    unsigned int i, j;
-    for (i = 0; i < pvGenos->size(); i++)
-    {
-        for (j = 0; j < pvGenos->size(); j++)
+    int i, j;
+    for (i = 0; i < (int) pvGenos->size(); i++)
+    {
+        for (j = 0; j < (int) pvGenos->size(); j++)
         {
             dSimilarity = M.EvaluateDistance(pvGenos->operator[](i), pvGenos->operator[](j));
@@ -183,6 +183,6 @@
         // print the number of genotypes and their names
         printf("%li\n", pvGenos->size());
-        unsigned int iGen;
-        for (iGen = 0; iGen < pvNames->size(); iGen++)
+        int iGen;
+        for (iGen = 0; iGen < (int) pvNames->size(); iGen++)
         {
             printf("%s\n", pvNames->at(iGen));
@@ -191,7 +191,7 @@
 
     // print out the matrix of similarities
-    for (i = 0; i < pvGenos->size(); i++)
-    {
-        for (j = 0; j < pvGenos->size(); j++)
+    for (i = 0; i < (int) pvGenos->size(); i++)
+    {
+        for (j = 0; j < (int) pvGenos->size(); j++)
         {
             printf("%.2lf\t", aaSimil[i][j]);
@@ -201,5 +201,5 @@
 
     // delete vectors and arrays
-    for (i = 0; i < pvGenos->size(); i++)
+    for (i = 0; i < (int) pvGenos->size(); i++)
     {
         delete pvGenos->operator[](i);
Index: /cpp/frams/model/similarity/simil_match.cpp
===================================================================
--- /cpp/frams/model/similarity/simil_match.cpp	(revision 351)
+++ /cpp/frams/model/similarity/simil_match.cpp	(revision 352)
@@ -27,9 +27,9 @@
     // fill vectors with "unmatched" indicator
     int i;
-    for (i = 0; i < m_apvMatched[0]->size(); i++)
+    for (i = 0; i < (int) m_apvMatched[0]->size(); i++)
     {
         m_apvMatched[0]->operator[](i) = -1;
     }
-    for (i = 0; i < m_apvMatched[1]->size(); i++)
+    for (i = 0; i < (int) m_apvMatched[1]->size(); i++)
     {
         m_apvMatched[1]->operator[](i) = -1;
@@ -86,8 +86,8 @@
     // check parameters of object 0
     assert((Obj0 == 0) || (Obj0 == 1));
-    assert((Index0 >= 0) && (Index0 < m_apvMatched[Obj0]->size()));
+    assert((Index0 >= 0) && (Index0 < (int) m_apvMatched[Obj0]->size()));
     // check parameters of object 1
     assert(((Obj1 == 0) || (Obj1 == 1)) && (Obj0 != Obj1));
-    assert((Index1 >= 0) && (Index1 < m_apvMatched[Obj1]->size()));
+    assert((Index1 >= 0) && (Index1 < (int) m_apvMatched[Obj1]->size()));
 
     // match given elements
@@ -108,5 +108,5 @@
     // check parameters
     assert((Obj == 0) || (Obj == 1));
-    assert((Index >= 0) && (Index < m_apvMatched[ Obj ]->size()));
+    assert((Index >= 0) && (Index < (int) m_apvMatched[ Obj ]->size()));
 
     // check if the element is matched
@@ -133,5 +133,5 @@
     // check parameters
     assert((Obj == 0) || (Obj == 1));
-    assert((Index >= 0) && (Index < m_apvMatched[ Obj ]->size()));
+    assert((Index >= 0) && (Index < (int) m_apvMatched[ Obj ]->size()));
 
     // return the index of the matched element
@@ -163,5 +163,5 @@
 
     // check if all elements of the smallest object are matched
-    for (nElem = 0; nElem < m_apvMatched[ nObj ]->size(); nElem++)
+    for (nElem = 0; nElem < (int) m_apvMatched[ nObj ]->size(); nElem++)
     {
         if (m_apvMatched[ nObj ]->operator[](nElem) < 0)
@@ -189,5 +189,5 @@
     // so it may be first object 
     int nObj = 0;
-    for (nElem = 0; nElem < m_apvMatched[ nObj ]->size(); nElem++)
+    for (nElem = 0; nElem < (int) m_apvMatched[ nObj ]->size(); nElem++)
     {
         if (m_apvMatched[ nObj ]->operator[](nElem) >= 0)
@@ -212,5 +212,5 @@
     {
         // for each object in the matching
-        for (iElem = 0; iElem < m_apvMatched[ iObj ]->size(); iElem++)
+        for (iElem = 0; iElem < (int) m_apvMatched[ iObj ]->size(); iElem++)
         {
             // for each element iElem for the object iObj
@@ -243,5 +243,5 @@
     // print first line - indices of objects
     printf("[ ");
-    for (i = 0; i < m_apvMatched[ nBigger ]->size(); i++)
+    for (i = 0; i < (int) m_apvMatched[ nBigger ]->size(); i++)
     {
         printf("%2i ", i);
@@ -254,5 +254,5 @@
         // for both objects - print out lines of matched elements
         printf("[ ");
-        for (i = 0; i < m_apvMatched[ nObj ]->size(); i++)
+        for (i = 0; i < (int) m_apvMatched[ nObj ]->size(); i++)
         {
             if (IsMatched(nObj, i))
Index: /cpp/frams/model/similarity/simil_model.cpp
===================================================================
--- /cpp/frams/model/similarity/simil_model.cpp	(revision 351)
+++ /cpp/frams/model/similarity/simil_model.cpp	(revision 352)
@@ -735,5 +735,5 @@
                 {
                     GetNeighbIndexes(mod, partInd, nIndexes);
-                    for (int k = 0; k < nIndexes.size(); k++)
+                    for (int k = 0; k < (int) nIndexes.size(); k++)
                     {
                         newDeg += m_fuzzyNeighb[mod][nIndexes.at(k)][depth - 1];
@@ -1680,7 +1680,4 @@
 int ModelSimil::MatchPartsGeometry()
 {
-    // uniwersalne liczniki
-    int i, j;
-
     // zaloz, ze sa modele i sa poprawne
     assert((m_Mod[0] != NULL) && (m_Mod[1] != NULL));
@@ -1726,6 +1723,4 @@
         // wartości orginalne transformacji dOrig uzyskuje się przez:
         // for ( iTrans = 0; iTrans <= TRANS_INDEX; iTrans++ ) dOrig *= dMul[ iTrans ];
-        const char *szTransformNames[ NO_OF_TRANSFORM ] = {"ID", "S_yz", "S_xz", "S_xy",
-            "R180_z", "R180_y", "R180_z", "S_(0,0,0)"};
         const int dMulX[ NO_OF_TRANSFORM ] = {1, -1, -1, 1, -1, 1, -1, -1};
         const int dMulY[ NO_OF_TRANSFORM ] = {1, 1, -1, -1, -1, -1, -1, 1};
