diff --git a/CTestConfig.cmake b/CTestConfig.cmake
index bff3a359112cf9e4128d7edf42f9b39e5baad4da..cac94542805a186d6b8d36ccab73bbd3987da637 100644
--- a/CTestConfig.cmake
+++ b/CTestConfig.cmake
@@ -8,6 +8,6 @@ set(CTEST_PROJECT_NAME "OpenStructure")
 set(CTEST_NIGHTLY_START_TIME "00:00:00 EST")
 
 set(CTEST_DROP_METHOD "http")
-set(CTEST_DROP_SITE "localhost")
+set(CTEST_DROP_SITE "kb-pdwg1059-06.pz.unibas.ch")
 set(CTEST_DROP_LOCATION "/cdash/submit.php?project=OpenStructure")
 set(CTEST_DROP_SITE_CDASH TRUE)
diff --git a/modules/base/src/test_utils/compare_files.cc b/modules/base/src/test_utils/compare_files.cc
index a1c1b9307b6e74ea6b03f59a60ac7d88992d5053..76243902178b665dce748da031c906a33105ae97 100644
--- a/modules/base/src/test_utils/compare_files.cc
+++ b/modules/base/src/test_utils/compare_files.cc
@@ -28,8 +28,8 @@ bool compare_files(const String& test, const String& gold_standard)
   std::ifstream gold_stream(gold_standard.c_str());
   String test_line, gold_line;
   while (true) {
-    bool test_end=std::getline(test_stream, test_line);
-    bool gold_end=std::getline(gold_stream, gold_line);
+    bool test_end=std::getline(test_stream, test_line) != 0;
+    bool gold_end=std::getline(gold_stream, gold_line) != 0;
     if (!(test_end || gold_end)) {
       return true;
     }
diff --git a/modules/config/base.hh b/modules/config/base.hh
index 2e279e89d30524c0212fefca649902310b70f050..d119fb8ce4d6737ad2b1e1b471b5147d95003712 100644
--- a/modules/config/base.hh
+++ b/modules/config/base.hh
@@ -80,7 +80,7 @@ inline Real rint(Real d)
 #pragma warning(disable:4244)
 #pragma warning(disable:4231)
 #pragma warning(disable:4305)
-
+#pragma warning(disable:4351) // turn off "new behavior ... will be default initialized" warning 
 
 #ifndef log2_function
 #define log2_function
diff --git a/modules/conop/src/compound_lib.cc b/modules/conop/src/compound_lib.cc
index 073ea0606fdc7c0d23257b6f4e6ba9c11c08e8fc..a5c9ad1a77455341a3e466cf0447a0d8bd1cccac 100644
--- a/modules/conop/src/compound_lib.cc
+++ b/modules/conop/src/compound_lib.cc
@@ -256,7 +256,7 @@ void CompoundLib::LoadAtomsFromDB(CompoundPtr comp, int pk) {
         atom_sp.alt_name=String(reinterpret_cast<const char*>(sqlite3_column_text(stmt, 1)));        
         atom_sp.element=String(reinterpret_cast<const char*>(sqlite3_column_text(stmt, 2))); 
         atom_sp.ordinal=sqlite3_column_int(stmt, 3);  
-        atom_sp.is_leaving=bool(sqlite3_column_int(stmt, 4));
+        atom_sp.is_leaving=bool(sqlite3_column_int(stmt, 4)!=0);
         comp->AddAtom(atom_sp);
       }
   }
diff --git a/modules/gfx/src/entity.cc b/modules/gfx/src/entity.cc
index f7b924c135861728223d9532b21d015ff2cc0a33..8d639a33665cddc437adb568d27b1f8c56f89723 100644
--- a/modules/gfx/src/entity.cc
+++ b/modules/gfx/src/entity.cc
@@ -249,7 +249,7 @@ void Entity::ProcessLimits(geom::Vec3& minc, geom::Vec3& maxc,
     maxc = geom::Max(maxc, geom::Max(t1, geom::Max(t2, geom::Max(t3, 
                      geom::Max(t4, geom::Max(t5, geom::Max(t6,
                      geom::Max(t7, t8))))))));
-  } catch(Error& e) {
+  } catch(Error&) {
     // in case the object is empty...
   }
 } 
diff --git a/modules/gfx/src/gfx_object.cc b/modules/gfx/src/gfx_object.cc
index 0a28a7e6e6dc30da9d3132f620e334b448b11add..c0d24ff0e1729f3dd5e7964248a9ada6f5f66a99 100644
--- a/modules/gfx/src/gfx_object.cc
+++ b/modules/gfx/src/gfx_object.cc
@@ -114,7 +114,7 @@ void GfxObj::ProcessLimits(geom::Vec3& minc, geom::Vec3& maxc,
     maxc = geom::Max(maxc, geom::Max(t1, geom::Max(t2, geom::Max(t3, 
                      geom::Max(t4, geom::Max(t5, geom::Max(t6,
                      geom::Max(t7, t8))))))));
-  } catch(Error& e) {
+  } catch(Error&) {
     // in case the object is empty...
   }
 }
diff --git a/modules/gfx/src/impl/map_octree.cc b/modules/gfx/src/impl/map_octree.cc
index cb611fe3e34dd2aecad4b967e003549a2884ec21..a130b6552b3bb032a2239e0b1de9f8033dcc5f2c 100644
--- a/modules/gfx/src/impl/map_octree.cc
+++ b/modules/gfx/src/impl/map_octree.cc
@@ -124,9 +124,9 @@ std::pair<float,float> MapOctree::BuildOctreeRec(const OcRangeVector& range_vec,
   }  
   // determine branch pattern
   uint16_t highest_order_mask=1 << highest_order_bit;
-  bool branch_x=range_vec.x & highest_order_mask;
-  bool branch_y=range_vec.y & highest_order_mask;
-  bool branch_z=range_vec.z & highest_order_mask;
+  bool branch_x=(range_vec.x & highest_order_mask)!= 0;
+  bool branch_y=(range_vec.y & highest_order_mask)!= 0;
+  bool branch_z=(range_vec.z & highest_order_mask)!= 0;
   int range_x[2][2];
   int range_y[2][2];
   int range_z[2][2];
diff --git a/modules/gui/src/file_loader.cc b/modules/gui/src/file_loader.cc
index 892278c56393775ea3c93549652fa9f9814ee00d..258d0ac024421a439cbec541aadd42ac54cd0faf 100644
--- a/modules/gui/src/file_loader.cc
+++ b/modules/gui/src/file_loader.cc
@@ -201,7 +201,7 @@ void FileLoader::HandleError(Message m, ErrorType type, const QString& filename,
   }
 }
 
-gfx::GfxObjP FileLoader::TryLoadEntity(const QString& filename, io::EntityIOHandlerP handler, const QString& selection) throw (io::IOException)
+gfx::GfxObjP FileLoader::TryLoadEntity(const QString& filename, io::EntityIOHandlerP handler, const QString& selection)
 {
   if(!handler){
     try{
@@ -232,7 +232,7 @@ gfx::GfxObjP FileLoader::TryLoadEntity(const QString& filename, io::EntityIOHand
 }
 
 #if OST_IMG_ENABLED
-gfx::GfxObjP FileLoader::TryLoadMap(const QString& filename, io::MapIOHandlerPtr handler) throw(io::IOException, io::IOFileAlreadyLoadedException)
+gfx::GfxObjP FileLoader::TryLoadMap(const QString& filename, io::MapIOHandlerPtr handler)
 {
   if(!handler){
     try{
@@ -266,7 +266,7 @@ gfx::GfxObjP FileLoader::TryLoadMap(const QString& filename, io::MapIOHandlerPtr
 }
 #endif
 
-gfx::GfxObjP FileLoader::TryLoadSurface(const QString& filename, io::SurfaceIOHandlerPtr handler) throw(io::IOException)
+gfx::GfxObjP FileLoader::TryLoadSurface(const QString& filename, io::SurfaceIOHandlerPtr handler)
 {
   if(!handler){
     try{
diff --git a/modules/gui/src/file_loader.hh b/modules/gui/src/file_loader.hh
index b102e17f69e0a62df75e1078c64dd79459b277a9..7dc110ab1a33ff8c49f65341471570fb5965be8b 100644
--- a/modules/gui/src/file_loader.hh
+++ b/modules/gui/src/file_loader.hh
@@ -49,10 +49,10 @@ private:
   };
 
   FileLoader();
-  static gfx::GfxObjP TryLoadEntity(const QString& filename, io::EntityIOHandlerP handler=io::EntityIOHandlerP(), const QString& selection=QString()) throw (io::IOException);
-  static gfx::GfxObjP TryLoadSurface(const QString& filename, io::SurfaceIOHandlerPtr handler=io::SurfaceIOHandlerPtr()) throw (io::IOException);
+  static gfx::GfxObjP TryLoadEntity(const QString& filename, io::EntityIOHandlerP handler=io::EntityIOHandlerP(), const QString& selection=QString());
+  static gfx::GfxObjP TryLoadSurface(const QString& filename, io::SurfaceIOHandlerPtr handler=io::SurfaceIOHandlerPtr());
 #if OST_IMG_ENABLED
-  static gfx::GfxObjP TryLoadMap(const QString& filename, io::MapIOHandlerPtr handler=io::MapIOHandlerPtr()) throw (io::IOException, io::IOFileAlreadyLoadedException);
+  static gfx::GfxObjP TryLoadMap(const QString& filename, io::MapIOHandlerPtr handler=io::MapIOHandlerPtr());
 #endif
   static void RunScript(const QString& filename);
   static void LoadPDB(const QString& filename, const QString& selection=QString());
diff --git a/modules/gui/src/plot_viewer/plot_viewer_panel.cc b/modules/gui/src/plot_viewer/plot_viewer_panel.cc
index 07ec70d9dda3ca887cc44b8c51309c6aa79ce01f..a440c06803b475b0d90dd3ac2ebf1151ecdf4074 100644
--- a/modules/gui/src/plot_viewer/plot_viewer_panel.cc
+++ b/modules/gui/src/plot_viewer/plot_viewer_panel.cc
@@ -138,7 +138,7 @@ void PlotViewerPanel::wheelEvent ( QWheelEvent * e )
 }
 void PlotViewerPanel::OnZoomX(int delta,QPoint pos)
 {
-  QPointF cursorpos=mapToScene(pos+QPoint(-PlotAxisBase::AXISWIDTH,0));
+  QPointF cursorpos=mapToScene(pos+QPoint(-int(PlotAxisBase::AXISWIDTH),0));
   Real scalefactor=exp(delta/1000.0);
   QRectF scenerect;
   scenerect.setCoords(cursorpos.x()-(cursorpos.x()-GetMinimumX())/scalefactor,
diff --git a/modules/io/src/mol/pdb_reader.cc b/modules/io/src/mol/pdb_reader.cc
index f26e77672d2ff4aa62c49f8ead2c7d98544423bc..21db6adf023afa1fb733103179b66b4e57188131 100644
--- a/modules/io/src/mol/pdb_reader.cc
+++ b/modules/io/src/mol/pdb_reader.cc
@@ -404,8 +404,8 @@ void PDBReader::ParseAndAddAtom(const StringRef& line, int line_num,
   }
   // b-factors and occ are replaced by radius and charge if PQR file format
   if(is_pqr_) {
-    occ=std::make_pair(true, 1.0);
-    temp=std::make_pair(true, 0.0);
+    occ=std::make_pair(true, Real(1.0));
+    temp=std::make_pair(true, Real(0.0));
     if (line.length()>=60) {
       charge=line.substr(54,6).ltrim().to_float();      
     }
diff --git a/modules/io/src/mol/pdb_writer.cc b/modules/io/src/mol/pdb_writer.cc
index c37b7ce4fb9f526e5fe300329b914ae1288975a0..dc9fbe702be5fe8ca5e2ce4f0b83f48f2a682eaa 100644
--- a/modules/io/src/mol/pdb_writer.cc
+++ b/modules/io/src/mol/pdb_writer.cc
@@ -323,7 +323,7 @@ void PDBWriter::Write(const mol::AtomHandleList& atoms)
   mol::ChainHandle last_chain;
   for (mol::AtomHandleList::const_iterator i=atoms.begin(),
        e=atoms.end(); i!=e; ++i, ++counter) {
-    write_atom(outstream_, line_, *i, counter, PDB::Flags() & PDB::PQR_FORMAT);
+    write_atom(outstream_, line_, *i, counter, (PDB::Flags() & PDB::PQR_FORMAT) != 0);
   }
   this->WriteModelTrailer();
 }
diff --git a/modules/mol/base/src/residue_view.cc b/modules/mol/base/src/residue_view.cc
index b9cc9b8b78bf48cb85e1db9e9dcce38f027ae429..72c5ff76fbd08034f744229f76c24e975ba4ee1d 100644
--- a/modules/mol/base/src/residue_view.cc
+++ b/modules/mol/base/src/residue_view.cc
@@ -208,9 +208,9 @@ double ResidueView::GetMass() const
 geom::Vec3 ResidueView::GetGeometricStart() const 
 {
   this->CheckValidity();
-  geom::Vec3 minimum(std::numeric_limits<double>::max(),
-                     std::numeric_limits<double>::max(),
-                     std::numeric_limits<double>::max());
+  geom::Vec3 minimum(std::numeric_limits<Real>::max(),
+                     std::numeric_limits<Real>::max(),
+                     std::numeric_limits<Real>::max());
   AtomViewList::const_iterator i;
   for (i=data_->atoms.begin(); i!=data_->atoms.end(); ++i) {
     minimum=geom::Min(minimum, (*i).GetPos());
@@ -221,9 +221,9 @@ geom::Vec3 ResidueView::GetGeometricStart() const
 geom::Vec3 ResidueView::GetGeometricEnd() const 
 {
   this->CheckValidity();
-  geom::Vec3 maximum(-std::numeric_limits<double>::max(),
-                     -std::numeric_limits<double>::max(),
-                     -std::numeric_limits<double>::max());
+  geom::Vec3 maximum(-std::numeric_limits<Real>::max(),
+                     -std::numeric_limits<Real>::max(),
+                     -std::numeric_limits<Real>::max());
   AtomViewList::const_iterator i;
   for (i=data_->atoms.begin(); i!=data_->atoms.end(); ++i) {
     maximum=geom::Max(maximum, (*i).GetPos());