https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119241
--- Comment #23 from Jakub Jelinek <jakub at gcc dot gnu.org> --- I've misparsed the condition guarding it, thought %f is done when it the exponent is outside of the narrow range, not inside. Anyway, if it is going to stick with the E notation, we should change e to E and make sure that the number following +- has at least 2 digits. And test whether printing 0. or -0. works the same before/after, plus the large/too small exponent cases, plus the 0, small negative and small positive ones.