diff --git a/Applications/DataExplorer/DataView/BaseItem.h b/Applications/DataExplorer/DataView/BaseItem.h
index c2e1a34401d2c98ac2a6b1801dc4eb3a1de0ca73..01c8ec6694a722744337f941d866a0e49b74d94d 100644
--- a/Applications/DataExplorer/DataView/BaseItem.h
+++ b/Applications/DataExplorer/DataView/BaseItem.h
@@ -13,12 +13,15 @@
  */
 #pragma once
 
-#include "Point.h"
-
 #include "VtkStationSource.h"
 #include <QModelIndex>
 #include <vtkPolyDataAlgorithm.h>
 
+namespace GeoLib
+{
+class Point;
+}
+
 /**
  * \brief A BaseItem contains additional Information about a subtree in the StationTreeModel.
  *
diff --git a/Applications/DataExplorer/DataView/CondItem.h b/Applications/DataExplorer/DataView/CondItem.h
index b4ac423753b58b543cf9a51f1e059eca1a9e5daa..b6a78335b669d9fbdf16f3b1c2c9bd245914bd77 100644
--- a/Applications/DataExplorer/DataView/CondItem.h
+++ b/Applications/DataExplorer/DataView/CondItem.h
@@ -16,7 +16,6 @@
 
 #include "FEMCondition.h"
 #include "TreeItem.h"
-#include "VtkPointsSource.h"
 
 /**
  * \brief A TreeItem containing a condition of a FEM (BC, IC or ST).
diff --git a/GeoLib/AABB.h b/GeoLib/AABB.h
index 12efac0d59c79e5ed9567978ed9315a00038b4c5..5c4ba628d5be6e4811553083c9cdbde9fa84c495 100644
--- a/GeoLib/AABB.h
+++ b/GeoLib/AABB.h
@@ -66,11 +66,7 @@ public:
         enlarge();
     }
 
-    /**
-     * copy constructor.
-     * @param src an axis aligned bounding box
-     * */
-    AABB(AABB const& src) = default;
+    AABB(AABB const&) = default;
 
     /**
      * Construction of object using input iterators. In contrast to give a vector
diff --git a/NumLib/DOF/LocalToGlobalIndexMap.cpp b/NumLib/DOF/LocalToGlobalIndexMap.cpp
index 696f9267a512dc682e9f6649745d1705c4eb83f0..4adb3786812c50cd0739f59bf4d601c2121c3306 100644
--- a/NumLib/DOF/LocalToGlobalIndexMap.cpp
+++ b/NumLib/DOF/LocalToGlobalIndexMap.cpp
@@ -310,7 +310,7 @@ LocalToGlobalIndexMap::getElementVariableIDs(std::size_t const mesh_item_id) con
     std::vector<std::size_t> vec;
     for (unsigned i=0; i<getNumberOfVariables(); i++)
     {
-        for (unsigned j=0; j<getNumberOfVariableComponents(i); j++)
+        for (int j=0; j<getNumberOfVariableComponents(i); j++)
         {
             auto comp_id = getGlobalComponent(i, j);
             if (!_rows(mesh_item_id, comp_id).empty())
diff --git a/NumLib/DOF/LocalToGlobalIndexMap.h b/NumLib/DOF/LocalToGlobalIndexMap.h
index c14202927978003b62e0a2207d509b1bb5063a04..7926a4c914abf9f178cc267e6868f2364c9836f3 100644
--- a/NumLib/DOF/LocalToGlobalIndexMap.h
+++ b/NumLib/DOF/LocalToGlobalIndexMap.h
@@ -105,7 +105,7 @@ public:
 
     std::size_t getNumberOfVariables() const { return (_variable_component_offsets.size() - 1); }
 
-    std::size_t getNumberOfVariableComponents(int variable_id) const
+    int getNumberOfVariableComponents(int variable_id) const
     {
         assert(static_cast<unsigned>(variable_id) < getNumberOfVariables());
         return _variable_component_offsets[variable_id+1] - _variable_component_offsets[variable_id];
diff --git a/ProcessLib/ComponentTransport/ComponentTransportProcessData.h b/ProcessLib/ComponentTransport/ComponentTransportProcessData.h
index 7e4b1e3bea916fa6d9c20be4bef36436a499e3c1..9512f64381a7be44ccce034801132ecc59cbbbc5 100644
--- a/ProcessLib/ComponentTransport/ComponentTransportProcessData.h
+++ b/ProcessLib/ComponentTransport/ComponentTransportProcessData.h
@@ -17,11 +17,6 @@
 
 #include "PorousMediaProperties.h"
 
-namespace MeshLib
-{
-class Element;
-}
-
 namespace ProcessLib
 {
 template <typename ReturnType>
diff --git a/ProcessLib/GroundwaterFlow/GroundwaterFlowProcessData.h b/ProcessLib/GroundwaterFlow/GroundwaterFlowProcessData.h
index 9218c2f59879cd68b95df2c3d70538d8dd1c1baa..fbf1bb74b9cbd88c5f9da9aa8b6ac9558957779b 100644
--- a/ProcessLib/GroundwaterFlow/GroundwaterFlowProcessData.h
+++ b/ProcessLib/GroundwaterFlow/GroundwaterFlowProcessData.h
@@ -9,12 +9,6 @@
 
 #pragma once
 
-namespace MeshLib
-{
-    class Element;
-}
-
-
 namespace ProcessLib
 {
 
diff --git a/ProcessLib/HT/HTProcessData.h b/ProcessLib/HT/HTProcessData.h
index f84c7e3ebdd3fb42e08c5c882425c6791dbcc606..94343ddeae1788e0a131af1478be0d6702d7f4ea 100644
--- a/ProcessLib/HT/HTProcessData.h
+++ b/ProcessLib/HT/HTProcessData.h
@@ -18,11 +18,6 @@
 
 #include "PorousMediaProperties.h"
 
-namespace MeshLib
-{
-class Element;
-}
-
 namespace ProcessLib
 {
 template <typename ReturnType>
diff --git a/ProcessLib/HeatConduction/HeatConductionProcessData.h b/ProcessLib/HeatConduction/HeatConductionProcessData.h
index 06d72977862feb8791f44aabe25ea686841bd765..6721232b273805ab16267727ad6ffea8f2bad642 100644
--- a/ProcessLib/HeatConduction/HeatConductionProcessData.h
+++ b/ProcessLib/HeatConduction/HeatConductionProcessData.h
@@ -9,11 +9,6 @@
 
 #pragma once
 
-namespace MeshLib
-{
-class Element;
-}
-
 namespace ProcessLib
 {
 template <typename T>
diff --git a/ProcessLib/HydroMechanics/HydroMechanicsProcessData.h b/ProcessLib/HydroMechanics/HydroMechanicsProcessData.h
index 2f7c1baebf3609f39eaa9db3e4d6a9f2c73452f2..122f981e8f715530cdc6cf6ad66d723548b1fce1 100644
--- a/ProcessLib/HydroMechanics/HydroMechanicsProcessData.h
+++ b/ProcessLib/HydroMechanics/HydroMechanicsProcessData.h
@@ -12,11 +12,6 @@
 #include <Eigen/Dense>
 #include <utility>
 
-namespace MeshLib
-{
-class Element;
-}
-
 namespace ProcessLib
 {
 namespace HydroMechanics
diff --git a/ProcessLib/SmallDeformation/SmallDeformationProcessData.h b/ProcessLib/SmallDeformation/SmallDeformationProcessData.h
index 9f6a5115f062c48bf5e51590138fccafbb772568..72e9dbae7552a457ef8ca163b56b27e11a2ff7cb 100644
--- a/ProcessLib/SmallDeformation/SmallDeformationProcessData.h
+++ b/ProcessLib/SmallDeformation/SmallDeformationProcessData.h
@@ -9,11 +9,6 @@
 
 #pragma once
 
-namespace MeshLib
-{
-class Element;
-}
-
 namespace ProcessLib
 {
 namespace SmallDeformation
diff --git a/ProcessLib/ThermalTwoPhaseFlowWithPP/ThermalTwoPhaseFlowWithPPProcessData.h b/ProcessLib/ThermalTwoPhaseFlowWithPP/ThermalTwoPhaseFlowWithPPProcessData.h
index 24495430ebb8bfebde2d0d51a888acc81c338561..56402c36bfdf4965579e7361213438d48fd91313 100644
--- a/ProcessLib/ThermalTwoPhaseFlowWithPP/ThermalTwoPhaseFlowWithPPProcessData.h
+++ b/ProcessLib/ThermalTwoPhaseFlowWithPP/ThermalTwoPhaseFlowWithPPProcessData.h
@@ -11,11 +11,6 @@
 
 #include "ThermalTwoPhaseFlowWithPPMaterialProperties.h"
 
-namespace MeshLib
-{
-class Element;
-}
-
 namespace ProcessLib
 {
 template <typename T>
diff --git a/ProcessLib/TwoPhaseFlowWithPP/TwoPhaseFlowWithPPProcessData.h b/ProcessLib/TwoPhaseFlowWithPP/TwoPhaseFlowWithPPProcessData.h
index bf722b2473d66603b603ddd794f73c62a29181e0..702e8232df56a94b0d406d6908d2c56a26f4900f 100644
--- a/ProcessLib/TwoPhaseFlowWithPP/TwoPhaseFlowWithPPProcessData.h
+++ b/ProcessLib/TwoPhaseFlowWithPP/TwoPhaseFlowWithPPProcessData.h
@@ -9,10 +9,6 @@
 
 #pragma once
 #include "TwoPhaseFlowWithPPMaterialProperties.h"
-namespace MeshLib
-{
-class Element;
-}
 
 namespace ProcessLib
 {
diff --git a/ProcessLib/TwoPhaseFlowWithPrho/TwoPhaseFlowWithPrhoProcessData.h b/ProcessLib/TwoPhaseFlowWithPrho/TwoPhaseFlowWithPrhoProcessData.h
index 460ea559dafa245ded0054318e3000485206f4b1..c69547322b4ab4bd720b2a4408fe04bb0da143f2 100644
--- a/ProcessLib/TwoPhaseFlowWithPrho/TwoPhaseFlowWithPrhoProcessData.h
+++ b/ProcessLib/TwoPhaseFlowWithPrho/TwoPhaseFlowWithPrhoProcessData.h
@@ -10,10 +10,6 @@
 #pragma once
 
 #include "TwoPhaseFlowWithPrhoMaterialProperties.h"
-namespace MeshLib
-{
-class Element;
-}
 
 namespace ProcessLib
 {
diff --git a/Tests/MaterialLib/KelvinVector.cpp b/Tests/MaterialLib/KelvinVector.cpp
index 88fad24936c8eebe1c8e8323e8ff400b28b96408..2adb278ef470f2788dc41d0e2c77eccc491521ad 100644
--- a/Tests/MaterialLib/KelvinVector.cpp
+++ b/Tests/MaterialLib/KelvinVector.cpp
@@ -157,11 +157,10 @@ TEST_F(MaterialLibSolidsKelvinVector4, Inverse)
         return error < 1e-6 && 1e-8 * std::pow(v.norm(), 1.4);
     };
 
-    auto eps = std::numeric_limits<double>::epsilon();
     ac::check<KelvinVector<4>>(
         f, 1000,
         ac::make_arbitrary(kelvinVectorGenerator)
-            .discard_if([&eps](KelvinVector<4> const& v) {
+            .discard_if([](KelvinVector<4> const& v) {
                 // only invertable matrices
                 return (std::abs(kelvinToTensor(v).determinant()) == 0);
             }),
@@ -178,11 +177,10 @@ TEST_F(MaterialLibSolidsKelvinVector6, Inverse)
         return error < 1e-6 && 1e-8 * std::pow(v.norm(), 1.4);
     };
 
-    auto eps = std::numeric_limits<double>::epsilon();
     ac::check<KelvinVector<6>>(
         f, 1000,
         ac::make_arbitrary(kelvinVectorGenerator)
-            .discard_if([&eps](KelvinVector<6> const& v) {
+            .discard_if([](KelvinVector<6> const& v) {
                 // only invertable matrices
                 return (std::abs(kelvinToTensor(v).determinant()) == 0);
             }),
diff --git a/Tests/NumLib/TestODEInt.cpp b/Tests/NumLib/TestODEInt.cpp
index 4310d954edcd857ba22d85bdfb26cd4fdbd9e861..9e8ee9b0ce6b686f35e359c79893f4fe2f5da141 100644
--- a/Tests/NumLib/TestODEInt.cpp
+++ b/Tests/NumLib/TestODEInt.cpp
@@ -95,7 +95,7 @@ public:
         sol.ts.push_back(t0);
         sol.solutions.push_back(x0);
 
-        auto cb = [this, &sol](const double t, GlobalVector const& x) {
+        auto cb = [&sol](const double t, GlobalVector const& x) {
             sol.ts.push_back(t);
             sol.solutions.push_back(x);
         };