Fix check-generated-files.sh failure with query_config
diff --git a/scripts/data_files/query_config.fmt b/scripts/data_files/query_config.fmt
index 0e4659a..064da4c 100644
--- a/scripts/data_files/query_config.fmt
+++ b/scripts/data_files/query_config.fmt
@@ -115,8 +115,25 @@
 #define MACRO_NAME_TO_STR(macro)                                        \
     mbedtls_printf( "%s", strlen( #macro "" ) > 0 ? #macro "\n" : "" )
 
+#if defined(_MSC_VER)
+/*
+ * Visual Studio throws the warning 4003 because many Mbed TLS feature macros
+ * are defined empty. This means that from the preprocessor's point of view
+ * the macro MBEDTLS_EXPANSION_TO_STR is being invoked without arguments as
+ * some macros expand to nothing. We suppress that specific warning to get a
+ * clean build and to ensure that tests treating warnings as errors do not
+ * fail.
+ */
+#pragma warning(push)
+#pragma warning(disable:4003)
+#endif /* _MSC_VER */
+
 int query_config( const char *config )
 {
 CHECK_CONFIG    /* If the symbol is not found, return an error */
     return( 1 );
 }
+
+#if defined(_MSC_VER)
+#pragma warning(pop)
+#endif /* _MSC_VER */