public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/31179]  New: strange behaviour of floor rounding
@ 2007-03-15  1:45 hobiger at nict dot go dot jp
  2007-03-15  5:37 ` [Bug middle-end/31179] " pinskia at gcc dot gnu dot org
  0 siblings, 1 reply; 3+ messages in thread
From: hobiger at nict dot go dot jp @ 2007-03-15  1:45 UTC (permalink / raw)
  To: gcc-bugs

This following small program will show the problem

# report.cpp 
#include <cmath>
#include <iostream>

int main(int argc, char* argv[])

{
 double A=140.70;
 double x=floor((A*100));
 std::cout << "Testing: A = " <<  A << " --> A*100 = " << A*100 << " but
floor(A*100) = " << x << "\n";
 double B=140.60;
 double y=floor((B*100));

 std::cout << "Testing: B = " <<  B << " --> B*100 = " << B*100 << " but
floor(B*100) = " << y << "\n";

}

The program was compiled simply by "g++ report.cpp -o report."

For all machines available here I obtained 

Testing: A = 140.7 --> A*100 = 14070 but floor(A*100) = 14069
Testing: B = 140.6 --> B*100 = 14060 but floor(B*100) = 14060

The latter result is as expected but for A=128.7,129.7,130.7....163.7 floor
rounding gives wrong results. This bug has been verified on several
architectures (PIII,P3, WinXP - Cygwin) and under several versions of gcc/g++
(4.1.1 - on FC6, 4.0.2 - on RH,  3.4.6 -on RH)
Any ideas where this comes frome ???


-- 
           Summary: strange behaviour of floor rounding
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Severity: critical
          Priority: P3
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: hobiger at nict dot go dot jp


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


^ permalink raw reply	[flat|nested] 3+ messages in thread

* [Bug middle-end/31179] strange behaviour of floor rounding
  2007-03-15  1:45 [Bug c++/31179] New: strange behaviour of floor rounding hobiger at nict dot go dot jp
@ 2007-03-15  5:37 ` pinskia at gcc dot gnu dot org
  0 siblings, 0 replies; 3+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-03-15  5:37 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from pinskia at gcc dot gnu dot org  2007-03-15 05:37 -------
I don't think this is a bug, 1407 and 14.7 are not exactly representable in
floating point.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Severity|critical                    |normal
          Component|c++                         |middle-end


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


^ permalink raw reply	[flat|nested] 3+ messages in thread

* [Bug middle-end/31179] strange behaviour of floor rounding
       [not found] <bug-31179-4@http.gcc.gnu.org/bugzilla/>
@ 2021-09-12  2:51 ` pinskia at gcc dot gnu.org
  0 siblings, 0 replies; 3+ messages in thread
From: pinskia at gcc dot gnu.org @ 2021-09-12  2:51 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=31179

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|---                         |INVALID

--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Actually 14070 is exactly represented but 140.7 is not.

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-09-12  2:51 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-03-15  1:45 [Bug c++/31179] New: strange behaviour of floor rounding hobiger at nict dot go dot jp
2007-03-15  5:37 ` [Bug middle-end/31179] " pinskia at gcc dot gnu dot org
     [not found] <bug-31179-4@http.gcc.gnu.org/bugzilla/>
2021-09-12  2:51 ` pinskia at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).