aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJanne Blomqvist <jb@gcc.gnu.org>2019-05-15 21:02:36 +0300
committerJanne Blomqvist <jb@gcc.gnu.org>2019-05-15 21:02:36 +0300
commit0c15ebf1bd0d7ec8111acfecf71542acac4115b1 (patch)
treed8d96f02445161f81d85ccf4298ddc0a5f9fa39e /gcc
parent40c81f845c6f1c5e6df74442ca59279090ac1e8d (diff)
downloadgcc-0c15ebf1bd0d7ec8111acfecf71542acac4115b1.zip
gcc-0c15ebf1bd0d7ec8111acfecf71542acac4115b1.tar.gz
gcc-0c15ebf1bd0d7ec8111acfecf71542acac4115b1.tar.bz2
Allow opening file on multiple units
As of Fortran 2018 it's allowed to open the same file on multiple units. libgfortran/ChangeLog: 2019-05-15 Janne Blomqvist <jb@gcc.gnu.org> PR fortran/90461 * io/open.c (new_unit): Don't check if the file is already open for F2018. testsuite/ChangeLog: 2019-05-15 Janne Blomqvist <jb@gcc.gnu.org> PR fortran/90461 * gfortran.dg/open_errors_2.f90: Add -std=f2008, adjust line number. * gfortran.dg/open_errors_3.f90: New test. From-SVN: r271260
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/ChangeLog6
-rw-r--r--gcc/testsuite/gfortran.dg/open_errors_2.f903
-rw-r--r--gcc/testsuite/gfortran.dg/open_errors_3.f9011
3 files changed, 19 insertions, 1 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index a85e383..ffba7ba 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,9 @@
+2019-05-15 Janne Blomqvist <jb@gcc.gnu.org>
+
+ PR fortran/90461
+ * gfortran.dg/open_errors_2.f90: Add -std=f2008, adjust line number.
+ * gfortran.dg/open_errors_3.f90: New test.
+
2019-05-15 H.J. Lu <hongjiu.lu@intel.com>
PR target/89021
diff --git a/gcc/testsuite/gfortran.dg/open_errors_2.f90 b/gcc/testsuite/gfortran.dg/open_errors_2.f90
index 5b41834..72d63bb 100644
--- a/gcc/testsuite/gfortran.dg/open_errors_2.f90
+++ b/gcc/testsuite/gfortran.dg/open_errors_2.f90
@@ -1,6 +1,7 @@
! { dg-do run }
+! { dg-options "-std=f2008" }
! { dg-shouldfail "runtime error" }
-! { dg-output "At line 13.*File already opened" }
+! { dg-output "At line 14.*File already opened" }
! PR 65563 - this used to segfault for some versions.
variable_1 = 0
diff --git a/gcc/testsuite/gfortran.dg/open_errors_3.f90 b/gcc/testsuite/gfortran.dg/open_errors_3.f90
new file mode 100644
index 0000000..da94956
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/open_errors_3.f90
@@ -0,0 +1,11 @@
+! { dg-do run }
+! PR 90461 Open file on multiple units as of F2018
+program openmult
+ implicit none
+ character(len=*), parameter :: fname="pr90461.dat"
+ open(10, file=fname, form="unformatted")
+ open(11, file=fname, form="unformatted")
+ close(11)
+ close(10, status="delete")
+end program openmult
+! { dg-final { remote_file build delete "pr90461.dat" } }