diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index a41423895f..ed94e5d4e8 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -45,6 +45,11 @@ if (MSVC)
         /Zc:inline
         /Zc:throwingNew
 
+        # External headers diagnostics
+        /experimental:external  # Enables the external headers options. This option isn't required in Visual Studio 2019 version 16.10 and later
+        /external:anglebrackets # Treats all headers included by #include <header>, where the header file is enclosed in angle brackets (< >), as external headers
+        /external:W0            # Sets the default warning level to 0 for external headers, effectively turning off warnings for external headers
+
         # Warnings
         /W3
         /we4018 # 'expression': signed/unsigned mismatch