X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/df5168c427b51f1ab2b3200a5c8f7626b3d24aae..7a5a5718592cb0873374e6ebc66d12a153d5acea:/include/wx/beforestd.h

diff --git a/include/wx/beforestd.h b/include/wx/beforestd.h
index abf6b791e2..ee02dca945 100644
--- a/include/wx/beforestd.h
+++ b/include/wx/beforestd.h
@@ -20,10 +20,27 @@
     it can be included several times.
  */
 
-#ifdef _MSC_VER
+// VC 7.x isn't as bad as VC6 and doesn't give these warnings
+#if defined(__VISUALC__) && __VISUALC__ <= 1200
+    // MSVC 5 does not have this
+    #if __VISUALC__ > 1100
+        #pragma warning(push, 1)
+    #else // VC 5
+        // 'expression' : signed/unsigned mismatch 
+        #pragma warning(disable:4018) 
+
+        // 'conversion' : conversion from 'type1' to 'type2', 
+        // possible loss of data 
+        #pragma warning(disable:4244) 
+
+        // C++ language change: to explicitly specialize class template 
+        // 'identifier' use the following syntax 
+        #pragma warning(disable:4663) 
+    #endif
+
     // these warning have to be disabled and not just temporarily disabled
-    // because they will be given at the end of the compilation of the current
-    // source -- and there is absolutely nothing we can do about them
+    // because they will be given at the end of the compilation of the
+    // current source and there is absolutely nothing we can do about them
 
     // 'foo': unreferenced inline function has been removed
     #pragma warning(disable:4514)
@@ -33,6 +50,5 @@
 
     // 'id': identifier was truncated to 'num' characters in the debug info
     #pragma warning(disable:4786)
+#endif // VC++ < 7
 
-    #pragma warning(push, 1)
-#endif