-fsingle-precision-constant breaks STL
Bug #1452470 reported by
Marc Singer
This bug affects 3 people
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
GNU Arm Embedded Toolchain |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
The upgrade to gcc-arm-
The attached file includes a compiler command line. When compiled with the 2015q1 compiler, an error is generated that includes this:
/opt/gcc-
_M_d = std::round(
The 2014q4 compiler builds the source file without errors.
Changed in gcc-arm-embedded: | |
status: | New → Fix Released |
To post a comment you must log in.
Hi,
The compiler actually did right thing. Two parameters of std::max() should be the same type. There are no definition of std::max() can take one float and one double.
This case is probably caused by the header file changes. The difference between 2014q4 and 2015q1 is that during pre-processing 2015q1 calls std::max() but 2014q4 didn't.
Regards,
Tony