https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108285
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Target| |i?86 --- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Looks like only a C++ front-end issue with -Wfloat-conversion Which looks like it ignores the conversion from excess precision . -xc++ -m32 -fexcess-precision=standard -Werror=float-conversion is enough to reproduce the warning (converted to error via -Werror). You might be able to reproduce the issue with 16bit float too on some targets too .. (32bit x86 is the only target where 32bit [and 64bit] floating point gets converted to 80bit float and all).