From d65a9f50081feeefab49cd43818df1c15a2aecfe Mon Sep 17 00:00:00 2001 From: Tobias Burnus Date: Thu, 23 Feb 2012 23:53:54 +0100 Subject: [PATCH] re PR fortran/52335 (I/O: -std=f95 rejects valid DELIM= in OPEN) 2012-02-23 Tobias Burnus PR fortran/52335 * io.c (gfc_match_open): Remove bogus F2003 DELIM= check. 2012-02-23 Tobias Burnus PR fortran/52335 * gfortran.dg/io_constraints_10.f90: New. From-SVN: r184534 --- gcc/fortran/ChangeLog | 5 +++++ gcc/fortran/io.c | 4 ---- gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/gfortran.dg/io_constraints_10.f90 | 16 ++++++++++++++++ 4 files changed, 26 insertions(+), 4 deletions(-) create mode 100644 gcc/testsuite/gfortran.dg/io_constraints_10.f90 diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 91be73403b3b..fc0237dd51ea 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,8 @@ +2012-02-23 Tobias Burnus + + PR fortran/52335 + * io.c (gfc_match_open): Remove bogus F2003 DELIM= check. + 2012-02-09 Jakub Jelinek Backported from mainline diff --git a/gcc/fortran/io.c b/gcc/fortran/io.c index 3ce7e816b9a0..b0f3ebe4ad74 100644 --- a/gcc/fortran/io.c +++ b/gcc/fortran/io.c @@ -1938,10 +1938,6 @@ gfc_match_open (void) /* Checks on the DELIM specifier. */ if (open->delim) { - if (gfc_notify_std (GFC_STD_F2003, "Fortran 2003: DELIM= at %C " - "not allowed in Fortran 95") == FAILURE) - goto cleanup; - if (open->delim->expr_type == EXPR_CONSTANT) { static const char *delim[] = { "APOSTROPHE", "QUOTE", "NONE", NULL }; diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index e84218e10cf2..80bfd16e4777 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2012-02-23 Tobias Burnus + + PR fortran/52335 + * gfortran.dg/io_constraints_10.f90: New. + 2012-02-23 Jakub Jelinek Backported from trunk diff --git a/gcc/testsuite/gfortran.dg/io_constraints_10.f90 b/gcc/testsuite/gfortran.dg/io_constraints_10.f90 new file mode 100644 index 000000000000..bb756aa2bc83 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/io_constraints_10.f90 @@ -0,0 +1,16 @@ +! { dg-do compile } +! { dg-options "-std=f95" } +! +! PR fortran/52335 +! + +integer :: lun +character(len=20) :: str + +! VALID Fortran 95: +open(unit=lun,file=str,delim='apostrophe',status='old') +inquire(lun, delim=str) + +! Fortran 2003: +write(*,*, delim='apostrophe') 'a' ! { dg-error "Fortran 2003: DELIM= at .1. not allowed in Fortran 95" } +end -- 2.47.2