Bug 93620 - Floating point is broken in C++ on targets with excess precision
Summary: Floating point is broken in C++ on targets with excess precision
Status: RESOLVED DUPLICATE of bug 323
Alias: None
Product: gcc
Classification: Unclassified
Component: c++ (show other bugs)
Version: unknown
: P3 normal
Target Milestone: ---
Assignee: Not yet assigned to anyone
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-02-07 02:35 UTC by Rich Felker
Modified: 2020-02-07 03:57 UTC (History)
0 users

See Also:
Host:
Target:
Build:
Known to work:
Known to fail:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Rich Felker 2020-02-07 02:35:26 UTC
Attempting to use -fexcess-precision=standard with g++ produces:

cc1plus: sorry, unimplemented: '-fexcess-precision=standard' for C++

In light of eldritch horrors like pr 85957 this means floating point is essentially catastrophically broken on i386 and m68k.

This came to my attention while analyzing https://github.com/OSGeo/PROJ/issues/1906. Most of the problems are g++ incorrectly handling excess precision, and they're having to put awful hacks with volatile objects in place to work around it.
Comment 1 Andrew Pinski 2020-02-07 02:38:34 UTC
Yes this is known.  See PR 323.
Where even this is mentioned that C++ is not enabled yet.

*** This bug has been marked as a duplicate of bug 323 ***