Hi, The attached patch does some cleanup and a check for trailing zeros to decide whether or not to round. I have added the additional test cases posted on the bugzilla to the existing test case round_3.f08. Regression tested on x86-64. OK for trunk and then I will back port the whole enchilada to 4.6.1 in a few weeks. Please consider the starting point of the zero scan carefully. I have not convinced myself that the d * p covers all cases, but it works for all cases I have tried. Regards, Jerry 2011-04-29 Jerry DeLisle PR libgfortran/48787 * io/write_float.def (output_float): Gather up integer declarations and add new 'p' for scale factor. Use 'p' in place of the 'dtp' reference everywhere. For ROUND_UP scan the digit string and only perform rounding if something other than '0' is found.