diff --git a/src/algebra/BiCGStab.hpp b/src/algebra/BiCGStab.hpp
index fbcfa8103e3e929ed2042b0d92b733c239850333..c931385b214c91ca2807db4f07fca027ebd79b25 100644
--- a/src/algebra/BiCGStab.hpp
+++ b/src/algebra/BiCGStab.hpp
@@ -1,6 +1,7 @@
 #ifndef BICG_STAB_HPP
 #define BICG_STAB_HPP
 
+#include <cmath>
 #include <iomanip>
 #include <iostream>
 
diff --git a/src/mesh/ConnectivityDescriptor.hpp b/src/mesh/ConnectivityDescriptor.hpp
index 352a664ea061f38e006332af2abbfa052fad9192..8f26988eadaa01dfec8aa0f14404a82819273475 100644
--- a/src/mesh/ConnectivityDescriptor.hpp
+++ b/src/mesh/ConnectivityDescriptor.hpp
@@ -1,9 +1,9 @@
 #ifndef CONNECTIVITY_DESCRIPTOR_HPP
 #define CONNECTIVITY_DESCRIPTOR_HPP
 
+#include <mesh/CellType.hpp>
 #include <mesh/ItemOfItemType.hpp>
 #include <mesh/RefItemList.hpp>
-
 #include <utils/PugsTraits.hpp>
 
 #include <vector>
diff --git a/src/output/VTKWriter.hpp b/src/output/VTKWriter.hpp
index 17cb61ebc8ab235d6af53fdb1ac2cdbf8804cd15..8118e74346e1806c8caa50639c2fa63f77428545 100644
--- a/src/output/VTKWriter.hpp
+++ b/src/output/VTKWriter.hpp
@@ -1,15 +1,13 @@
 #ifndef VTK_WRITER_HPP
 #define VTK_WRITER_HPP
 
-#include <mesh/IConnectivity.hpp>
-
 #include <algebra/TinyVector.hpp>
-
+#include <mesh/CellType.hpp>
+#include <mesh/IConnectivity.hpp>
 #include <mesh/ItemValue.hpp>
 #include <output/OutputNamedItemValueSet.hpp>
-#include <utils/Messenger.hpp>
-
 #include <utils/Exceptions.hpp>
+#include <utils/Messenger.hpp>
 
 #include <fstream>
 #include <iomanip>
diff --git a/src/scheme/FiniteVolumesEulerUnknowns.hpp b/src/scheme/FiniteVolumesEulerUnknowns.hpp
index 6997b63a05e4c0a26002977d944fff21c72d9bf3..bc55835ede9b323f15558561845332b1384162d3 100644
--- a/src/scheme/FiniteVolumesEulerUnknowns.hpp
+++ b/src/scheme/FiniteVolumesEulerUnknowns.hpp
@@ -3,6 +3,7 @@
 
 #include <algebra/TinyVector.hpp>
 #include <mesh/ItemValue.hpp>
+#include <scheme/BlockPerfectGas.hpp>
 
 template <typename TMeshData>
 class FiniteVolumesEulerUnknowns
diff --git a/src/utils/PugsTraits.hpp b/src/utils/PugsTraits.hpp
index 3846e141ebe6986b02d4fdb2f87816cb6c4bb277..a6b6dd3aa39280924cde030b3b5a84f15f88233d 100644
--- a/src/utils/PugsTraits.hpp
+++ b/src/utils/PugsTraits.hpp
@@ -1,6 +1,7 @@
 #ifndef PUGS_TRAITS_HPP
 #define PUGS_TRAITS_HPP
 
+#include <cstddef>
 #include <type_traits>
 
 template <size_t N, typename T>
diff --git a/tests/mpi_test_Messenger.cpp b/tests/mpi_test_Messenger.cpp
index 3ab24267795b84fe328fb6b8f05b262b99edd935..b044547b8de081e7379dd4fb395d9c83557e51a0 100644
--- a/tests/mpi_test_Messenger.cpp
+++ b/tests/mpi_test_Messenger.cpp
@@ -104,6 +104,8 @@ test_allToAll<tri_int>()
 
 }   // namespace mpi_check
 
+// clazy:excludeall=non-pod-global-static
+
 TEST_CASE("Messenger", "[mpi]")
 {
   SECTION("communication info")
diff --git a/tests/test_Array.cpp b/tests/test_Array.cpp
index 948cfb554216c41ea62a84c3b7632d986d167602..3b8dd45878d07747cae3b4e761266c8d9bf14293 100644
--- a/tests/test_Array.cpp
+++ b/tests/test_Array.cpp
@@ -14,6 +14,8 @@
 // Instantiate to ensure full coverage is performed
 template class Array<int>;
 
+// clazy:excludeall=non-pod-global-static
+
 TEST_CASE("Array", "[utils]")
 {
   Array<int> a(10);
diff --git a/tests/test_ArrayUtils.cpp b/tests/test_ArrayUtils.cpp
index 6a7774e1de458a535db66af5000150fad820609e..fd34c4e00d34d0e83e60633effc7fe86bb78c048 100644
--- a/tests/test_ArrayUtils.cpp
+++ b/tests/test_ArrayUtils.cpp
@@ -7,6 +7,8 @@
 #include <algebra/TinyMatrix.hpp>
 #include <algebra/TinyVector.hpp>
 
+// clazy:excludeall=non-pod-global-static
+
 // Instantiate to ensure full coverage is performed
 template class Array<int>;
 
diff --git a/tests/test_BiCGStab.cpp b/tests/test_BiCGStab.cpp
index a40fa8a4f9f9607ce7eea53b2c4a1c5685a4281d..b7cb2d3bd8afe280a7d8c416a662016851e0d820 100644
--- a/tests/test_BiCGStab.cpp
+++ b/tests/test_BiCGStab.cpp
@@ -3,6 +3,8 @@
 #include <algebra/BiCGStab.hpp>
 #include <algebra/CRSMatrix.hpp>
 
+// clazy:excludeall=non-pod-global-static
+
 TEST_CASE("BiCGStab", "[algebra]")
 {
   SECTION("no preconditionner")
diff --git a/tests/test_CRSMatrix.cpp b/tests/test_CRSMatrix.cpp
index 651eb2350aa0fe95a4895a7ee257cd303486325e..7a7a943d14c943f5a315544fc6eab947ffc28463 100644
--- a/tests/test_CRSMatrix.cpp
+++ b/tests/test_CRSMatrix.cpp
@@ -5,6 +5,8 @@
 // Instantiate to ensure full coverage is performed
 template class SparseMatrixDescriptor<int, uint8_t>;
 
+// clazy:excludeall=non-pod-global-static
+
 TEST_CASE("CRSMatrix", "[algebra]")
 {
   SECTION("matrix size")
diff --git a/tests/test_ItemType.cpp b/tests/test_ItemType.cpp
index 88e3ad877024f9c4ea4bd3304d8d3414f438abe0..98e5d5d114dc336fae48da0552b45b7661f5de89 100644
--- a/tests/test_ItemType.cpp
+++ b/tests/test_ItemType.cpp
@@ -3,6 +3,8 @@
 #include <mesh/ItemType.hpp>
 #include <utils/PugsMacros.hpp>
 
+// clazy:excludeall=non-pod-global-static
+
 TEST_CASE("ItemType", "[connectivity]")
 {
   ItemType node_type = ItemType::node;
diff --git a/tests/test_PCG.cpp b/tests/test_PCG.cpp
index d0939d327602f440af82d449c64fb329afa8a662..4b2f2df9bed4bec0ea31502be3c5480e1eec6989 100644
--- a/tests/test_PCG.cpp
+++ b/tests/test_PCG.cpp
@@ -3,6 +3,8 @@
 #include <algebra/CRSMatrix.hpp>
 #include <algebra/PCG.hpp>
 
+// clazy:excludeall=non-pod-global-static
+
 TEST_CASE("PCG", "[algebra]")
 {
   SECTION("no preconditionner")
diff --git a/tests/test_PugsAssert.cpp b/tests/test_PugsAssert.cpp
index 9f155fc631173a0a4c6b2ca5cfffb2f55df3d52b..b28ee88148cb0a3c39eb897a86918b17dad2199b 100644
--- a/tests/test_PugsAssert.cpp
+++ b/tests/test_PugsAssert.cpp
@@ -4,6 +4,8 @@
 
 #include <string>
 
+// clazy:excludeall=non-pod-global-static
+
 TEST_CASE("PugsAssert", "[utils]")
 {
   SECTION("checking for assert error")
diff --git a/tests/test_RevisionInfo.cpp b/tests/test_RevisionInfo.cpp
index e3becb6cbd3c7b60b2c92ccc7e24ae82573d217e..64c324c4d1eab11c763cd0cbd775370f7966bf9f 100644
--- a/tests/test_RevisionInfo.cpp
+++ b/tests/test_RevisionInfo.cpp
@@ -5,6 +5,8 @@
 #include <utils/pugs_git_revision.hpp>
 #include <utils/pugs_version.hpp>
 
+// clazy:excludeall=non-pod-global-static
+
 TEST_CASE("RevisionInfo", "[utils]")
 {
   SECTION("checking pugs version")
diff --git a/tests/test_SparseMatrixDescriptor.cpp b/tests/test_SparseMatrixDescriptor.cpp
index 039ba08242013e339afb1a1ba37725a319603cb0..4e8b90134060c786cc7f97bc8fc8cd00bfba3257 100644
--- a/tests/test_SparseMatrixDescriptor.cpp
+++ b/tests/test_SparseMatrixDescriptor.cpp
@@ -7,6 +7,8 @@
 // Instantiate to ensure full coverage is performed
 template class SparseMatrixDescriptor<int, uint8_t>;
 
+// clazy:excludeall=non-pod-global-static
+
 TEST_CASE("SparseMatrixDescriptor", "[algebra]")
 {
   SECTION("SparseRowDescriptor subclass")
diff --git a/tests/test_TinyMatrix.cpp b/tests/test_TinyMatrix.cpp
index d764a88fc83ccbfb683a7037cece1042eea0f265..e0d7ef39da53ae03358b307e448136d69216d1cf 100644
--- a/tests/test_TinyMatrix.cpp
+++ b/tests/test_TinyMatrix.cpp
@@ -13,6 +13,8 @@ template class TinyMatrix<2, int>;
 template class TinyMatrix<3, int>;
 template class TinyMatrix<4, double>;
 
+// clazy:excludeall=non-pod-global-static
+
 TEST_CASE("TinyMatrix", "[algebra]")
 {
   TinyMatrix<3, int> A(1, 2, 3, 4, 5, 6, 7, 8, 9);
diff --git a/tests/test_TinyVector.cpp b/tests/test_TinyVector.cpp
index f64e2da09b410a53c1549efd09602b959beef2ce..20f1f68be22f35b67a38d13d70b95e3fad188e08 100644
--- a/tests/test_TinyVector.cpp
+++ b/tests/test_TinyVector.cpp
@@ -8,6 +8,8 @@
 template class TinyVector<1, int>;
 template class TinyVector<3, int>;
 
+// clazy:excludeall=non-pod-global-static
+
 TEST_CASE("TinyVector", "[algebra]")
 {
   TinyVector<3, int> v(1, 2, 3);
diff --git a/tests/test_Vector.cpp b/tests/test_Vector.cpp
index 9b6730f0576233cd8c155a7328fbe6172a049e51..b52ac45232af6750d99cd3770e16c7da50679231 100644
--- a/tests/test_Vector.cpp
+++ b/tests/test_Vector.cpp
@@ -7,6 +7,8 @@
 // Instantiate to ensure full coverage is performed
 template class Vector<int>;
 
+// clazy:excludeall=non-pod-global-static
+
 TEST_CASE("Vector", "[algebra]")
 {
   SECTION("size")