diff --git a/Geo/GFaceCompound.cpp b/Geo/GFaceCompound.cpp
index 4801156e39dc239374e1a1ec4e52539de012016c..cd1f1665e2dfcf313f5e42cd38158fc5bd8f2d60 100644
--- a/Geo/GFaceCompound.cpp
+++ b/Geo/GFaceCompound.cpp
@@ -307,7 +307,7 @@ void GFaceCompound::getTriangle (double u, double v,
 void GFaceCompound::buildOct() const
 {
   SBoundingBox3d bb;
-  int count;
+  int count = 0;
   std::list<GFace*> :: const_iterator it = _compound.begin();
   for ( ; it != _compound.end() ; ++it){
     for ( int i=0;i<(*it)->triangles.size() ; ++i){
diff --git a/Geo/Geo.cpp b/Geo/Geo.cpp
index 74943927840627ef1ceb239367b9241db89199e8..2294f85ed7805e31d914053e72ce0bc515efd7a4 100644
--- a/Geo/Geo.cpp
+++ b/Geo/Geo.cpp
@@ -3067,6 +3067,7 @@ bool SplitCurve(int line_id, List_T *vertices_id, List_T *shapes)
   DeleteShape(c->Typ, c->Num);
   List_Delete(new_list);
   List_Delete(rshapes);
+  return true;
 }
 
 // Intersect a curve with a surface
diff --git a/Mesh/Field.h b/Mesh/Field.h
index 6572fd2683815cf2e5fd8c8fabf9675651a68a08..d68b87d385475135d6e11a60281d2db9701d1a84 100644
--- a/Mesh/Field.h
+++ b/Mesh/Field.h
@@ -46,6 +46,7 @@ class FieldOption {
     case FIELD_OPTION_PATH: return "path"; break;
     case FIELD_OPTION_STRING: return "string"; break;
     case FIELD_OPTION_LIST: return "list"; break;
+    default: return "unknown";
     }
   }
   virtual void numerical_value(double val) { throw(1); }