aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran
diff options
context:
space:
mode:
authorTobias Burnus <burnus@net-b.de>2006-10-28 23:59:20 +0200
committerTobias Burnus <burnus@gcc.gnu.org>2006-10-28 23:59:20 +0200
commitf1827a8c6996a8fc972db78323775b19f800a82d (patch)
treeba7ef9bb4fd32b31cbf588ec8e9091a49ccfa142 /gcc/fortran
parent0a3a2b91a58ff5c183893b798eaf62af12801774 (diff)
downloadgcc-f1827a8c6996a8fc972db78323775b19f800a82d.zip
gcc-f1827a8c6996a8fc972db78323775b19f800a82d.tar.gz
gcc-f1827a8c6996a8fc972db78323775b19f800a82d.tar.bz2
re PR fortran/28224 (gfortran should support namelist (nml) for internal file units)
fortran/ 2006-10-28 Tobias Burnus <burnus@net-b.de> PR fortran/28224 * io.c (check_io_constraints): Allow namelists for internal files for Fortran 2003. testsuite/ 2006-10-28 Tobias Burnus <burnus@net-b.de> PR fortran/28224 * gfortran.dg/io_constraints_2.f90: Use -std=f95. * gfortran.dg/namelist_internal.f90: New test. From-SVN: r118113
Diffstat (limited to 'gcc/fortran')
-rw-r--r--gcc/fortran/ChangeLog6
-rw-r--r--gcc/fortran/io.c10
2 files changed, 13 insertions, 3 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 8ff4a5f..e5540e0 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,9 @@
+2006-10-28 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/28224
+ * io.c (check_io_constraints): Allow namelists
+ for internal files for Fortran 2003.
+
2006-10-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/27954
diff --git a/gcc/fortran/io.c b/gcc/fortran/io.c
index d489769..cbb7cf9 100644
--- a/gcc/fortran/io.c
+++ b/gcc/fortran/io.c
@@ -2596,9 +2596,13 @@ if (condition) \
"REC tag at %L is incompatible with internal file",
&dt->rec->where);
- io_constraint (dt->namelist != NULL,
- "Internal file at %L is incompatible with namelist",
- &expr->where);
+ if (dt->namelist != NULL)
+ {
+ if (gfc_notify_std(GFC_STD_F2003,
+ "Internal file at %L is incompatible with namelist",
+ &expr->where) == FAILURE)
+ m = MATCH_ERROR;
+ }
io_constraint (dt->advance != NULL,
"ADVANCE tag at %L is incompatible with internal file",