diff --git a/src/basics/CMakeLists.txt b/src/basics/CMakeLists.txt
index 40ccda2b4414b8002608be9bc5572ad5442e9e54..a85bde19a8bcdff6762d17f78ec05802446e2c65 100644
--- a/src/basics/CMakeLists.txt
+++ b/src/basics/CMakeLists.txt
@@ -86,7 +86,6 @@ if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
     target_compile_options(basics PRIVATE "/wd4100") # unreferenced formal parameter
     target_compile_options(basics PRIVATE "/wd4701") # potentially uninitialized local variable
     target_compile_options(basics PRIVATE "/wd4703") # potentially uninitialized local pointer
-    target_compile_options(basics PRIVATE "/wd4458") # declaration of 'XXX' hides class member
     target_compile_options(basics PRIVATE "/wd4305") #'initializing': truncation from double to float
     target_compile_options(basics PRIVATE "/wd4242") #'conversion from 'int' to 'char', possible loss of data
 endif()
\ No newline at end of file
diff --git a/src/cpu/core/CMakeLists.txt b/src/cpu/core/CMakeLists.txt
index 2d42d40f00ea87a9de0f059e5fefb900badada52..94dc320bcf5ed082e28731ef6341a307e4d2f997 100644
--- a/src/cpu/core/CMakeLists.txt
+++ b/src/cpu/core/CMakeLists.txt
@@ -96,7 +96,6 @@ if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
     target_compile_options(${library_name} PUBLIC "/wd4100") # unreferenced formal parameter
     target_compile_options(${library_name} PUBLIC "/wd4701") # potentially uninitialized local variable
     target_compile_options(${library_name} PUBLIC "/wd4703") # potentially uninitialized local pointer
-    target_compile_options(${library_name} PUBLIC "/wd4458") # declaration of 'XXX' hides class member
     target_compile_options(${library_name} PUBLIC "/wd4305") #'initializing': truncation from double to float
     target_compile_options(${library_name} PUBLIC "/wd4505") # C4505: 'XXX': unreferenced local function has been removed
     target_compile_options(${library_name} PUBLIC "/wd4310") # C4310: cast truncates constant value, triggerd by muParserbase.h
diff --git a/src/gpu/core/CMakeLists.txt b/src/gpu/core/CMakeLists.txt
index 9567019a0ffd0a095530464e1908c94fcdc8ba68..da1246f06f7a634645499ed921e4bac528d16b33 100644
--- a/src/gpu/core/CMakeLists.txt
+++ b/src/gpu/core/CMakeLists.txt
@@ -84,7 +84,6 @@ if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
     list(APPEND WARNINGS "/wd4100") # unreferenced formal parameter
     list(APPEND WARNINGS "/wd4701") # potentially uninitialized local variable
     list(APPEND WARNINGS "/wd4703") # potentially uninitialized local pointer
-    list(APPEND WARNINGS "/wd4458") # declaration of 'XXX' hides class member
     list(APPEND WARNINGS "/wd4305") # 'initializing': truncation from double to float  
     list(APPEND WARNINGS "/wd4505") # 'XXX': unreferenced local function has been removed
     list(APPEND WARNINGS "/wd4324") # structure was padded due to alignment specifier
diff --git a/tests/unit-tests/gpu/GridGenerator/grid/GridImpTest.cpp b/tests/unit-tests/gpu/GridGenerator/grid/GridImpTest.cpp
index 7ddec9588f634d68fedb14dd93f14bb85d6bc3bf..bed2456b7fa382c4dc00441731019d3980ce74ad 100644
--- a/tests/unit-tests/gpu/GridGenerator/grid/GridImpTest.cpp
+++ b/tests/unit-tests/gpu/GridGenerator/grid/GridImpTest.cpp
@@ -37,6 +37,8 @@
 #include <memory>
 #include <ostream>
 
+#include <basics/tests/testUtilities.h>
+
 #include <gpu/GridGenerator/grid/GridImp.h>
 
 #include "PointerDefinitions.h"
@@ -310,9 +312,9 @@ void compareNodeToCoordinates(SPtr<Grid> grid, int index, real xExpected, real y
 {
     real xNode, yNode, zNode;
     grid->transIndexToCoords(index, xNode, yNode, zNode);
-    EXPECT_FLOAT_EQ(xNode, xExpected)  << message;
-    EXPECT_FLOAT_EQ(yNode, yExpected) << message;
-    EXPECT_FLOAT_EQ(zNode, zExpected) << message;
+    EXPECT_THAT(xNode, RealEq(xExpected)) << message;
+    EXPECT_THAT(yNode, RealEq(yExpected)) << message;
+    EXPECT_THAT(zNode, RealEq(zExpected)) << message;
 }
 
 void iterateOverXLine(std::shared_ptr<Grid> grid, uint iy, uint iz, std::function<void(int, const std::string&)> func)