http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48615
--- Comment #2 from Thomas Henlich <thenlich at users dot sourceforge.net> 2011-04-23 11:06:28 UTC --- The second branch (let printf do rounding) should only be choosen if the requested rounding mode is the same as printf uses (nearest/compatible?) and either - the format is ES or - the format is D, E or G; and the scale factor is 0. I am unsure about the last requirement (scale_factor==0); isn't the number of digits known even if the scale factor is != 0?