diff --git a/Src/Containers/FSubOctree.hpp b/Src/Containers/FSubOctree.hpp
index d164fe5adb2c94375200643e29efc29cc4cd37cd..07e92fc61f1c5c8de8fd53654c4da1ac2876615b 100755
--- a/Src/Containers/FSubOctree.hpp
+++ b/Src/Containers/FSubOctree.hpp
@@ -135,6 +135,7 @@ protected:
 
         // Manage border limits
         if(arrayIndex == this->leftLeafIndex && arrayIndex == this->rightLeafIndex){
+	    this->rightLeafIndex = -1;
             // only one cells, return true
             return true;
         }
diff --git a/Src/Kernels/Chebyshev/FChebTensorialM2LHandler.hpp b/Src/Kernels/Chebyshev/FChebTensorialM2LHandler.hpp
index d65a7c594fe29426bc5567266a52983ee209a8da..334322478900bba387e5335b7b27c3d25b1347b9 100755
--- a/Src/Kernels/Chebyshev/FChebTensorialM2LHandler.hpp
+++ b/Src/Kernels/Chebyshev/FChebTensorialM2LHandler.hpp
@@ -357,7 +357,7 @@ template <int ORDER, class MatrixKernelClass>
 unsigned int ComputeAndCompress(const MatrixKernelClass *const MatrixKernel, 
                                 const FReal CellWidth, 
                                 const FReal CellWidthExtension, 
-                                const FReal epsilon,
+                                const FReal /*epsilon*/,
                                 FReal* &U,
                                 FReal** &C,
                                 FReal* &B)
diff --git a/Src/Kernels/Interpolation/FInterpMatrixKernel.hpp b/Src/Kernels/Interpolation/FInterpMatrixKernel.hpp
index 52a19d7e4f85eb6096015821960559db680b72ef..84ff8b45eda06a2b1baa569afa0292ebabd73108 100755
--- a/Src/Kernels/Interpolation/FInterpMatrixKernel.hpp
+++ b/Src/Kernels/Interpolation/FInterpMatrixKernel.hpp
@@ -83,7 +83,7 @@ struct FInterpMatrixKernelR : FInterpAbstractMatrixKernel
   FInterpMatrixKernelR() {}
 
   // copy ctor
-  FInterpMatrixKernelR(const FInterpMatrixKernelR& other) 
+  FInterpMatrixKernelR(const FInterpMatrixKernelR& /*other*/) 
   {}
 
   // returns position in reduced storage
@@ -151,7 +151,7 @@ struct FInterpMatrixKernelRH :FInterpMatrixKernelR{
 
   // copy ctor
   FInterpMatrixKernelRH(const FInterpMatrixKernelRH& other) 
-  : LX(other.LX), LY(other.LY), LZ(other.LZ) 
+  :FInterpMatrixKernelR(other), LX(other.LX), LY(other.LY), LZ(other.LZ) 
   {}
 
   // evaluate interaction
@@ -219,7 +219,7 @@ struct FInterpMatrixKernelRR : FInterpAbstractMatrixKernel
   FInterpMatrixKernelRR() {}
 
   // copy ctor
-  FInterpMatrixKernelRR(const FInterpMatrixKernelRR& other) 
+  FInterpMatrixKernelRR(const FInterpMatrixKernelRR& /*other*/) 
   {}
 
   // returns position in reduced storage
@@ -288,7 +288,7 @@ struct FInterpMatrixKernelLJ : FInterpAbstractMatrixKernel
   FInterpMatrixKernelLJ() {}
 
   // copy ctor
-  FInterpMatrixKernelLJ(const FInterpMatrixKernelLJ& other) 
+  FInterpMatrixKernelLJ(const FInterpMatrixKernelLJ& /*other*/) 
   {}
 
   // returns position in reduced storage
diff --git a/Src/Utils/FMath.hpp b/Src/Utils/FMath.hpp
index 941361469b7fac61dbd81edf61efe8ba8723a621..ad1fbc2ac206dc68766f5154bc2a8e5ead3134c5 100755
--- a/Src/Utils/FMath.hpp
+++ b/Src/Utils/FMath.hpp
@@ -262,7 +262,7 @@ struct FMath{
 	  FReal getmax() const{
 	    return max;
 	  }
-	  FReal getNbElements() const{
+	  int getNbElements() const{
 	    return nbElements;
 	  }
 	  void  setNbElements(const int & n) {
diff --git a/Src/Utils/FMpi.hpp b/Src/Utils/FMpi.hpp
index 703b5097f5d3e03b7dc108113dada9725ce682b4..651a029ed26ece15b25c7e25e67b9c7979b518ee 100755
--- a/Src/Utils/FMpi.hpp
+++ b/Src/Utils/FMpi.hpp
@@ -263,31 +263,31 @@ public:
     // Mpi Types meta function
     ////////////////////////////////////////////////////////////
 
-    static const MPI_Datatype GetType(const long long&){
+    static  MPI_Datatype GetType(const long long&){
         return MPI_LONG_LONG;
     }
 
-    static const MPI_Datatype GetType(const long int&){
+    static  MPI_Datatype GetType(const long int&){
         return MPI_LONG;
     }
 
-    static const MPI_Datatype GetType(const double&){
+    static  MPI_Datatype GetType(const double&){
         return MPI_DOUBLE;
     }
 
-    static const MPI_Datatype GetType(const float&){
+    static  MPI_Datatype GetType(const float&){
         return MPI_FLOAT;
     }
 
-    static const MPI_Datatype GetType(const int&){
+    static  MPI_Datatype GetType(const int&){
         return MPI_INT;
     }
 
-    static const MPI_Datatype GetType(const char&){
+    static  MPI_Datatype GetType(const char&){
         return MPI_CHAR;
     }
 
-    static const MPI_Datatype GetType(const FComplexe& a){
+    static  MPI_Datatype GetType(const FComplexe& a){
         MPI_Datatype FMpiComplexe;
         MPI_Type_contiguous(2, GetType(a.getReal()) , &FMpiComplexe);
         return FMpiComplexe;