https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106165
Vincent Lefèvre <vincent-gcc at vinc17 dot net> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |vincent-gcc at vinc17 dot net --- Comment #6 from Vincent Lefèvre <vincent-gcc at vinc17 dot net> --- (In reply to xeioex from comment #5) > My question is more practical. For example while > `-fexcess-precision=standard` fixes the problem in GCC. But, I am left with > the same problem regarding other compilers. The need for -fexcess-precision=standard is due to a "bug" in GCC (more precisely, a non-conformance issue with the ISO C standard). If the other compilers conform to the C standard by default, you won't have to do anything. Note that even with -fexcess-precision=standard, you get double rounding, i.e. a first rounding to extended precision, then a second rounding to double precision. This is allowed by the C standard, but may break some algorithms or give results different from platforms with a single rounding.