diff --git a/apps/benchmarks/CouetteFlow/CouetteFlow.cpp b/apps/benchmarks/CouetteFlow/CouetteFlow.cpp
index fb9f383b9b37e1a6e1b42b4d913cd6a5d8b7a085..b28601c50d2ce89cb65425fd707588387a2e1053 100644
--- a/apps/benchmarks/CouetteFlow/CouetteFlow.cpp
+++ b/apps/benchmarks/CouetteFlow/CouetteFlow.cpp
@@ -241,7 +241,7 @@ class BorderRefinementSelection
 public:
 
    BorderRefinementSelection( const Setup & setup, const uint_t level, const real_t bufferDistance ) :
-      setup_( setup ), level_( level ), bufferDistance_( bufferDistance ) {}
+      setup_( setup ), level_( level ), bufferDistance_( bufferDistance ) { WALBERLA_UNUSED(setup_); }
 
    void operator()( SetupBlockForest & forest )
    {
diff --git a/src/gather/DataProcessor.h b/src/gather/DataProcessor.h
index a2efd154aef4d02a762f15f7feaa903a17c30fe5..b337becc9a3aae5bb2c3782df4e9d37e09354d05 100644
--- a/src/gather/DataProcessor.h
+++ b/src/gather/DataProcessor.h
@@ -43,6 +43,8 @@ class DataProcessor
 {
    public:
 
+      virtual ~DataProcessor() = default;
+
       /*
        * Process "graph like" data
        * every entry in the outer vector is a data-point.
diff --git a/src/mesh/pe/vtk/CommonDataSources.h b/src/mesh/pe/vtk/CommonDataSources.h
index d2454c15cd6a59e836e6f97dba550b0d6696281e..bf86f2cddcde9b3283cf454cab882896212f0c42 100644
--- a/src/mesh/pe/vtk/CommonDataSources.h
+++ b/src/mesh/pe/vtk/CommonDataSources.h
@@ -189,6 +189,8 @@ public:
    LinearVelocityFaceDataSource( const std::string & _name = "linearVelocity" )
       : Base( _name ) { }
 
+   virtual ~LinearVelocityFaceDataSource() = default;
+
    virtual uint_t numComponents() { return uint_t(3); }
 
    virtual void getData( const MeshType & /*mesh*/, const Faces & faces, std::vector<value_type> & data, const BodyPointerFPropManager & bodyPointer )
@@ -249,6 +251,8 @@ public:
    AngularVelocityFaceDataSource( const std::string & _name = "angularVelocity" )
       : Base( _name ) { }
 
+   virtual ~AngularVelocityFaceDataSource() = default;
+
    virtual uint_t numComponents() { return uint_t(3); }
 
    virtual void getData( const MeshType & /*mesh*/, const Faces & faces, std::vector<value_type> & data, const BodyPointerFPropManager & bodyPointer )
@@ -279,6 +283,8 @@ public:
    SurfaceVelocityVertexDataSource( const std::string & _name = "surfaceVelocity" )
       : Base( _name ) { }
 
+   virtual ~SurfaceVelocityVertexDataSource() = default;
+
    virtual uint_t numComponents() { return uint_t(3); }
 
    virtual void getData( const MeshType & mesh, const Vertices & vertices, std::vector<value_type> & data, const BodyPointerVPropManager & bodyPointer )
diff --git a/tests/lbm/boundary/SimpleDiffusionDirichlet.cpp b/tests/lbm/boundary/SimpleDiffusionDirichlet.cpp
index 1cc3e60f983b73e40d69710f05f33b76f0ac5f62..1d4e95008f8987b97e9606d8230bfae2fa6b4990 100644
--- a/tests/lbm/boundary/SimpleDiffusionDirichlet.cpp
+++ b/tests/lbm/boundary/SimpleDiffusionDirichlet.cpp
@@ -249,6 +249,7 @@ public:
 #ifdef TEST_USES_VTK_OUTPUT
         error_.resize(time_);
 #endif
+        WALBERLA_UNUSED(maxValue_);
 }
 
    void operator()();
diff --git a/tests/mesh/MeshContainmentOctreeTest.cpp b/tests/mesh/MeshContainmentOctreeTest.cpp
index 4e922e17a8e5f6a4a54f49437fccc32037052b91..40f542ddbfa20cc3afae192c5b70e9f875938af6 100644
--- a/tests/mesh/MeshContainmentOctreeTest.cpp
+++ b/tests/mesh/MeshContainmentOctreeTest.cpp
@@ -69,9 +69,9 @@ int main( int argc, char * argv[] )
 
    auto aabb = computeAABB( *mesh );
 
-  static const mesh::TriangleMesh::Point xAxis( 1, 0, 0 );
-  static const mesh::TriangleMesh::Point yAxis( 0, 1, 0 );
-  static const mesh::TriangleMesh::Point zAxis( 0, 0, 1 );
+  //static const mesh::TriangleMesh::Point xAxis( 1, 0, 0 );
+  //static const mesh::TriangleMesh::Point yAxis( 0, 1, 0 );
+  //static const mesh::TriangleMesh::Point zAxis( 0, 0, 1 );
   
   mesh::TriangleMesh::Point r = mesh::toOpenMesh( ( aabb.minCorner() - aabb.maxCorner() ).getNormalized() );
   
@@ -124,4 +124,4 @@ int main( int argc, char * argv[] )
 int main( int argc, char * argv[] )
 {
    return walberla::mesh::main( argc, argv );
-}
\ No newline at end of file
+}