re PR fortran/57822 (I/O: "(g0)" wrongly prints "E+0000")
authorJerry DeLisle <jvdelisle@gcc.gnu.org>
Tue, 10 Feb 2015 02:49:58 +0000 (02:49 +0000)
committerJerry DeLisle <jvdelisle@gcc.gnu.org>
Tue, 10 Feb 2015 02:49:58 +0000 (02:49 +0000)
2015-02-09  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libgfortran/57822
* io/write_float.def (output_float): If doing g0 editing and
exponent is zero, do not emit exponent.

From-SVN: r220564

libgfortran/ChangeLog
libgfortran/io/write_float.def

index d3b8f8f6e48ebf2b501032cc1a666258ba722c81..61de246a1497d696abce533832f0f8192adfbf4b 100644 (file)
@@ -1,3 +1,9 @@
+2015-02-09  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR libgfortran/57822
+       * io/write_float.def (output_float): If doing g0 editing and
+       exponent is zero, do not emit exponent.
+
 2015-02-07  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
 
        PR libgfortran/60956
index 1bcd8159a22085f064db98dea32a2fcf82016c85..434c3dfd06983650c85dc78e11e21411dc1c6378 100644 (file)
@@ -724,7 +724,7 @@ output_float (st_parameter_dt *dtp, const fnode *f, char *buffer, size_t size,
     }
 
   /* Output the exponent.  */
-  if (expchar)
+  if (expchar && !(dtp->u.p.g0_no_blanks && e == 0))
     {
       if (expchar != ' ')
        {