Version 4.3.0 20080428 (Red Hat 4.3.0-8) the following code: double* dr = new double[ nn ]; double aa = 28.68, bb=28.35; // any numbers will do, the point is // these numbers don't have large exponents ... *(dr+ii) = (aa - bb) / bb; // produces anomalous results w/large exponents
double xx = (aa - bb) / bb; // work *(dr+ii) = xx; // around I had another example, but lost track of it after working around it, but it also involved dealing with intermediate arithmetic results. -- Summary: code generation error Product: gcc Version: 4.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: mlandis at pnmx dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37306