mirror of git://gcc.gnu.org/git/gcc.git
write_float.def (output_float): Move block determining room for leading zero to before checkng g0 formatting.
2015-11-22 Jerry DeLisle <jvdelisle@gcc.gnu.org> * io/write_float.def (output_float): Move block determining room for leading zero to before checkng g0 formatting. From-SVN: r230728
This commit is contained in:
parent
4f8a3b87f9
commit
ba67259c00
|
|
@ -1,3 +1,8 @@
|
||||||
|
2015-11-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
||||||
|
|
||||||
|
* io/write_float.def (output_float): Move block determining
|
||||||
|
room for leading zero to before checkng g0 formatting.
|
||||||
|
|
||||||
2015-09-12 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
|
2015-09-12 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
|
||||||
|
|
||||||
PR libfortran/67527
|
PR libfortran/67527
|
||||||
|
|
|
||||||
|
|
@ -514,12 +514,21 @@ output_float (st_parameter_dt *dtp, const fnode *f, char *buffer, size_t size,
|
||||||
w = w == 1 ? 2 : w;
|
w = w == 1 ? 2 : w;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Work out how much padding is needed. */
|
/* Work out how much padding is needed. */
|
||||||
nblanks = w - (nbefore + nzero + nafter + edigits + 1);
|
nblanks = w - (nbefore + nzero + nafter + edigits + 1);
|
||||||
if (sign != S_NONE)
|
if (sign != S_NONE)
|
||||||
nblanks--;
|
nblanks--;
|
||||||
|
|
||||||
|
/* See if we have space for a zero before the decimal point. */
|
||||||
|
if (nbefore == 0 && nblanks > 0)
|
||||||
|
{
|
||||||
|
leadzero = 1;
|
||||||
|
nblanks--;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
leadzero = 0;
|
||||||
|
|
||||||
if (dtp->u.p.g0_no_blanks)
|
if (dtp->u.p.g0_no_blanks)
|
||||||
{
|
{
|
||||||
w -= nblanks;
|
w -= nblanks;
|
||||||
|
|
@ -544,15 +553,6 @@ output_float (st_parameter_dt *dtp, const fnode *f, char *buffer, size_t size,
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* See if we have space for a zero before the decimal point. */
|
|
||||||
if (nbefore == 0 && nblanks > 0)
|
|
||||||
{
|
|
||||||
leadzero = 1;
|
|
||||||
nblanks--;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
leadzero = 0;
|
|
||||||
|
|
||||||
/* For internal character(kind=4) units, we duplicate the code used for
|
/* For internal character(kind=4) units, we duplicate the code used for
|
||||||
regular output slightly modified. This needs to be maintained
|
regular output slightly modified. This needs to be maintained
|
||||||
consistent with the regular code that follows this block. */
|
consistent with the regular code that follows this block. */
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue