[Bug c/55771] Negation and type conversion incorrectly exchanged

ian at airs dot com gcc-bugzilla@gcc.gnu.org
Fri Dec 21 13:29:00 GMT 2012


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55771

Ian Lance Taylor <ian at airs dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |NEW
   Last reconfirmed|                            |2012-12-21
         Resolution|INVALID                     |
     Ever Confirmed|0                           |1

--- Comment #6 from Ian Lance Taylor <ian at airs dot com> 2012-12-21 13:29:01 UTC ---
-3UL is not outside the range of float.  -3UL == 0xfffffffffffffffd.  That is
less than FLT_MAX == 3.40282e+38.  It is true that the value can not be
precisely represented in float, but it is not out of range.  So the standard
says that the compiler must pick the nearest representable value, either higher
or lower.



More information about the Gcc-bugs mailing list