http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48602
--- Comment #43 from Thomas Henlich <thenlich at users dot sourceforge.net> 2011-04-23 11:44:45 UTC --- It seems the required changes would fit in nicely in output_float(): We can treat FMT_G like FMT_E. After the rounding step, i.e. when the final value of the variable e in output_float() is known (at the label 'skip'), if e is within limits for F editing, revert the formatting to F and add the blanks at the end.