incubator-stdcxx-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Eric Lemings" <Eric.Lemi...@roguewave.com>
Subject Please peer review this change to src/num_put.cpp
Date Wed, 21 May 2008 19:33:06 GMT

I'm fixing 64-bit conversion warnings per STDCXX-550.  One change I've
made is to src/num_put.cpp.  Thought it would be a good idea to get
another set of eyes on it since it's a change to library source:
 
Index: src/num_put.cpp
===================================================================
--- src/num_put.cpp     (revision 657873)
+++ src/num_put.cpp     (working copy)
@@ -122,7 +122,7 @@
 inline bool __rw_signbit (double val)
 {
     // implement own signbit() to avoid dragging in libm or libsunmath
-    return _RWSTD_REINTERPRET_CAST (const _RWSTD_UINT64_T&, val) >> 63;
+    return bool (_RWSTD_REINTERPRET_CAST (_RWSTD_UINT64_T&, val) >>
63);
 }
 
 inline bool __rw_isinf (double val) {
@@ -622,7 +622,7 @@
         j = 0;
 
     do {
-        const unsigned dig = (i >> (j * bits)) & basemask;
+        const unsigned dig = unsigned ((i >> (j * bits)) & basemask);
 
         _RWSTD_ASSERT (dig <= basemask);
 
I think the explicit bool cast should be fine since most compilers will
do it anyway.  Same with the explicit unsigned cast.  Or should I use
_RWSTD_STATIC_CAST?
 
Brad.

Mime
View raw message