diff options
author | Jerry DeLisle <jvdelisle@gcc.gnu.org> | 2008-10-18 05:23:47 +0000 |
---|---|---|
committer | Jerry DeLisle <jvdelisle@gcc.gnu.org> | 2008-10-18 05:23:47 +0000 |
commit | 80ad19715e00f32845b1c7d775ab75512da6de50 (patch) | |
tree | 3fab2cf7aa5d235cfc6921adc37e53d6f6c3d5fa | |
parent | 9edfa17f32c89bfa400d8a5b11f003dbe181e00d (diff) | |
download | gcc-80ad19715e00f32845b1c7d775ab75512da6de50.zip gcc-80ad19715e00f32845b1c7d775ab75512da6de50.tar.gz gcc-80ad19715e00f32845b1c7d775ab75512da6de50.tar.bz2 |
re PR fortran/37863 (Display of a value close but less to 1 shows 2 with '(F3.0)')
2008-10-17 Jerry DeLisle <jvdelisle@gcc.gnu.org
PR libfortran/37707
* io/write_float.def (WRITE_FLOAT): Round to 1.0 correctly.
* io/io.h (st_parameter_44): Fix id type declaration.
From-SVN: r141207
-rw-r--r-- | libgfortran/ChangeLog | 6 | ||||
-rw-r--r-- | libgfortran/io/io.h | 2 | ||||
-rw-r--r-- | libgfortran/io/write_float.def | 2 |
3 files changed, 8 insertions, 2 deletions
diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog index 049f0dd..f6da2ce 100644 --- a/libgfortran/ChangeLog +++ b/libgfortran/ChangeLog @@ -1,3 +1,9 @@ +2008-10-17 Jerry DeLisle <jvdelisle@gcc.gnu.org + + PR libfortran/37707 + * io/write_float.def (WRITE_FLOAT): Round to 1.0 correctly. + * io/io.h (st_parameter_44): Fix id type declaration. + 2008-10-16 Thomas Koenig <tkoenig@gcc.gnu.org> * io/file_pos.c (unformatted_backspace): Normal case is diff --git a/libgfortran/io/io.h b/libgfortran/io/io.h index 710224d..ec37be3 100644 --- a/libgfortran/io/io.h +++ b/libgfortran/io/io.h @@ -458,7 +458,7 @@ typedef struct st_parameter_43 typedef struct st_parameter_44 { - GFC_IO_INT *id; + GFC_INTEGER_4 *id; GFC_IO_INT pos; CHARACTER1 (asynchronous); CHARACTER2 (blank); diff --git a/libgfortran/io/write_float.def b/libgfortran/io/write_float.def index 0ee8f35..73a6ed1 100644 --- a/libgfortran/io/write_float.def +++ b/libgfortran/io/write_float.def @@ -746,7 +746,7 @@ sprintf (buffer, "%+-#" STR(MIN_FIELD_WIDTH) ".*" \ if (tmp < 0.5)\ tmp = 0.0;\ else if (tmp < 1.0)\ - tmp = tmp + 0.5;\ + tmp = 1.0;\ }\ zero_flag = (tmp == 0.0);\ \ |