]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/extended.c
wxDialUpManager fixes
[wxWidgets.git] / src / common / extended.c
index 90bd43ec72fba83670d02e6347ce543168967c1e..c691e6b1a56daae7a2c2b45c8286190f17715e24 100644 (file)
@@ -1,7 +1,10 @@
+#if !defined(__VISAGECPP__)
+#   pragma warning(disable:4001)    /* non standard extension used: single line comment */
+#endif
 #include "wx/setup.h"
 #include <math.h>
 
-#if USE_APPLE_IEEE
+#if wxUSE_APPLE_IEEE
 
 /*
  * C O N V E R T   T O  I E E E   E X T E N D E D
@@ -82,16 +85,27 @@ void ConvertToIeeeExtended(double num, unsigned char *bytes)
                }
        }
 
-       bytes[0] = expon >> 8;
-       bytes[1] = expon;
-       bytes[2] = hiMant >> 24;
-       bytes[3] = hiMant >> 16;
-       bytes[4] = hiMant >> 8;
-       bytes[5] = hiMant;
-       bytes[6] = loMant >> 24;
-       bytes[7] = loMant >> 16;
-       bytes[8] = loMant >> 8;
-       bytes[9] = loMant;
+    /* disable the warning about 'possible loss of data' & 'conversion between diff types' */
+    #ifdef _MSC_VER
+        #pragma warning(disable: 4244)
+        #pragma warning(disable: 4135)
+    #endif /* Visual C++ */
+
+       bytes[0] = (expon >> 8) & 0xff;
+       bytes[1] = expon & 0xff;
+       bytes[2] = (unsigned char) ((hiMant >> 24) & 0xff);
+       bytes[3] = (unsigned char) ((hiMant >> 16) & 0xff);
+       bytes[4] = (unsigned char) ((hiMant >> 8) & 0xff);
+       bytes[5] = (unsigned char) (hiMant & 0xff);
+       bytes[6] = (unsigned char) ((loMant >> 24) & 0xff);
+       bytes[7] = (unsigned char) ((loMant >> 16) & 0xff);
+       bytes[8] = (unsigned char) ((loMant >> 8) & 0xff);
+       bytes[9] = (unsigned char) (loMant & 0xff);
+
+    #ifdef _MSC_VER
+        #pragma warning(default: 4244)
+        #pragma warning(default: 4135)
+    #endif /* Visual C++ */
 }
 
 /*
@@ -176,4 +190,4 @@ double ConvertFromIeeeExtended(const unsigned char *bytes)
                return f;
 }
 
-#endif USE_APPLE_IEEE
+#endif /* wxUSE_APPLE_IEEE */