From 0b0a0c945fad9f4a8ec83c4eabd9e141294d6ea5 Mon Sep 17 00:00:00 2001 From: Jerry DeLisle Date: Fri, 15 Apr 2011 16:29:44 +0000 Subject: [PATCH] re PR libfortran/48589 (Invalid G0/G0.d editing for NaN/infinity) 2011-04-15 Jerry DeLisle PR libgfortran/48589 * io/write_float.def (write_infnan): Set width properly for G0. From-SVN: r172502 --- libgfortran/ChangeLog | 6 ++++++ libgfortran/io/write_float.def | 4 ++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog index 8d53c6f16af..5dae754a9ce 100644 --- a/libgfortran/ChangeLog +++ b/libgfortran/ChangeLog @@ -1,3 +1,8 @@ +2011-04-15 Jerry DeLisle + + PR libgfortran/48589 + * io/write_float.def (write_infnan): Set width properly for G0. + 2011-04-15 Tobias Burnus PR fortran/18918 @@ -15,6 +20,7 @@ * intrinsics/system_clock.c: Use weakrefs only when needed and supported. +>>>>>>> .r172501 2011-04-12 Janne Blomqvist * configure.ac: Use AC_TYPE_* to make sure we have (u)intptr_t, diff --git a/libgfortran/io/write_float.def b/libgfortran/io/write_float.def index b72cf9f5665..ea9c99f50f9 100644 --- a/libgfortran/io/write_float.def +++ b/libgfortran/io/write_float.def @@ -654,11 +654,11 @@ write_infnan (st_parameter_dt *dtp, const fnode *f, int isnan_flag, int sign_bit mark = (sign == S_PLUS || sign == S_MINUS) ? 8 : 7; nb = f->u.real.w; - + /* If the field width is zero, the processor must select a width not zero. 4 is chosen to allow output of '-Inf' or '+Inf' */ - if (nb == 0) + if ((nb == 0) || dtp->u.p.g0_no_blanks) { if (isnan_flag) nb = 3; -- 2.30.2