aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/testsuite/ChangeLog10
-rw-r--r--gcc/testsuite/gfortran.dg/pr20163-2.f5
-rw-r--r--libgfortran/ChangeLog7
-rw-r--r--libgfortran/io/open.c3
4 files changed, 20 insertions, 5 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 81ab1de..73aa6eb 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,14 +1,14 @@
+2005-03-28 Steve Ellcey <sje@cup.hp.com>
+
+ PR target/19890
+ * gcc.dg/20020219-1.c: Skip on IA64 HP-UX in ILP32 mode.
+
2005-03-29 Dale Ranta <dir@lanl.gov>
Francois-Xavier Coudert <coudert@clipper.ens.fr>
PR libfortran/20163
* gfortran.dg/pr20163-2.f: New test.
-2005-03-28 Steve Ellcey <sje@cup.hp.com>
-
- PR target/19890
- * gcc.dg/20020219-1.c: Skip on IA64 HP-UX in ILP32 mode.
-
2005-03-28 Jan Hubicka <jh@suse.cz>
PR middle-end/20635
diff --git a/gcc/testsuite/gfortran.dg/pr20163-2.f b/gcc/testsuite/gfortran.dg/pr20163-2.f
new file mode 100644
index 0000000..c0b2573
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/pr20163-2.f
@@ -0,0 +1,5 @@
+ open(10,status="foo",err=100)
+ call abort
+ 100 continue
+ open(10,status="scratch")
+ end
diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog
index 32b5454..edc23af 100644
--- a/libgfortran/ChangeLog
+++ b/libgfortran/ChangeLog
@@ -1,3 +1,10 @@
+2005-03-29 Dale Ranta <dir@lanl.gov>
+ Francois-Xavier Coudert <coudert@clipper.ens.fr>
+
+ PR libfortran/20163
+ * io/open.c (st_open): call library_end() before returning even if
+ an error arises.
+
2005-03-25 Francois-Xavier Coudert <coudert@clipper.ens.fr>
PR libfortran/19678
diff --git a/libgfortran/io/open.c b/libgfortran/io/open.c
index 3d0e5be..82a862b 100644
--- a/libgfortran/io/open.c
+++ b/libgfortran/io/open.c
@@ -481,7 +481,10 @@ st_open (void)
flags.position = POSITION_ASIS;
if (ioparm.library_return != LIBRARY_OK)
+ {
+ library_end ();
return;
+ }
u = find_unit (ioparm.unit);