aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJerry DeLisle <jvdelisle@gcc.gnu.org>2007-11-03 14:57:13 +0000
committerJerry DeLisle <jvdelisle@gcc.gnu.org>2007-11-03 14:57:13 +0000
commit0c70ecbea207b60b6126b8b347bfd915fea8fd29 (patch)
treecf30982e29c15ba9686eb7944649534fe4eb6e35
parentecf24057f806d6766df43f146ceceac651469430 (diff)
downloadgcc-0c70ecbea207b60b6126b8b347bfd915fea8fd29.zip
gcc-0c70ecbea207b60b6126b8b347bfd915fea8fd29.tar.gz
gcc-0c70ecbea207b60b6126b8b347bfd915fea8fd29.tar.bz2
re PR libfortran/33985 (access="stream",form="unformatted" doesn't buffer)
2007-11-03 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR libfortran/33985 * io/transfer.c (finalize_transfer): Do not flush for unformatted STREAM I/O. From-SVN: r129870
-rw-r--r--libgfortran/ChangeLog6
-rw-r--r--libgfortran/io/transfer.c8
2 files changed, 11 insertions, 3 deletions
diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog
index 8d3a4b4..c642542 100644
--- a/libgfortran/ChangeLog
+++ b/libgfortran/ChangeLog
@@ -1,3 +1,9 @@
+2007-11-03 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/33985
+ * io/transfer.c (finalize_transfer): Do not flush for
+ unformatted STREAM I/O.
+
2007-10-27 Tobias Burnus <burnus@net-b.de>
* mk-kinds-h.sh: Change LANG=C to LC_ALL=C.
diff --git a/libgfortran/io/transfer.c b/libgfortran/io/transfer.c
index 793f194..38bb96b 100644
--- a/libgfortran/io/transfer.c
+++ b/libgfortran/io/transfer.c
@@ -2640,9 +2640,11 @@ finalize_transfer (st_parameter_dt *dtp)
if (is_stream_io (dtp))
{
if (dtp->u.p.current_unit->flags.form == FORM_FORMATTED)
- next_record (dtp, 1);
- flush (dtp->u.p.current_unit->s);
- sfree (dtp->u.p.current_unit->s);
+ {
+ next_record (dtp, 1);
+ flush (dtp->u.p.current_unit->s);
+ sfree (dtp->u.p.current_unit->s);
+ }
return;
}