https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114740
Bug ID: 114740
Summary: i686-linux-gnu-g++ does not interpret floating point
literals as double
Product: gcc
Version: 13.2.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: gnu.ojxq8 at dralias dot com
Target Milestone: ---
Starting with i686-linux-gnu-g++-13, including 14, a floating point literal
appears to be no longer interpreted as double.
i686-linux-gnu-g++-12, and earlier, as well as clang, work fine.
Steps to reproduce:
$ echo 'int main() { return double(1e-8) == 1e-8; }' > a.cpp
$ i686-linux-gnu-g++-13 -std=c++03 test.cpp && ./a.out ; echo $?
0
$ i686-linux-gnu-g++-12 -std=c++03 test.cpp && ./a.out ; echo $?
1