From f9cfa5ea836f4935740f6fb6906206c9ab8f21c4 Mon Sep 17 00:00:00 2001 From: jvdelisle Date: Sun, 7 Dec 2008 01:15:46 +0000 Subject: [PATCH] 2008-12-06 Jerry DeLisle PR fortran/38425 * gfortran.dg/io_constraints_5.f90: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@142535 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/gfortran.dg/io_constraints_5.f90 | 23 +++++++++++++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 gcc/testsuite/gfortran.dg/io_constraints_5.f90 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 2e6c2da..d7490b0 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2008-12-06 Jerry DeLisle + + PR fortran/38425 + * gfortran.dg/io_constraints_5.f90: New test. + 2008-12-06 Jakub Jelinek PR middle-end/38428 diff --git a/gcc/testsuite/gfortran.dg/io_constraints_5.f90 b/gcc/testsuite/gfortran.dg/io_constraints_5.f90 new file mode 100644 index 0000000..8d62e25 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/io_constraints_5.f90 @@ -0,0 +1,23 @@ +! { dg-do compile } +! PR 38425 I/O: POS= compile-time diagnostics +!---------------------------------------------------------- +character(len=30) :: str +open(3,access='stream') + +! C919 (R913) If io-unit is not a file-unit-number, the +! io-control-spec-list shall not contain a REC= specifier +! or a POS= specifier. +write(str,*, pos=4) 5 ! { dg-error "incompatible with internal" } + +! C927 (R913) If a POS= specifier appears, the +! io-control-spec-list shall not contain a REC= specifier. +write(3,pos=5,rec=4) 5 ! { dg-error "POS= is not allowed with REC=" } +write(3,rec=4,pos=5) 5 ! { dg-error "POS= is not allowed with REC=" } + +!Fortran runtime error: REC=specifier not allowed with STREAM access +write(3,rec=4) 5 +!Fortran runtime error: REC=specifier must be positive +write(3,rec=-3) 44 +!Fortran runtime error: POS=specifier must be positive +write(3,pos=-4) 44 +end -- 2.7.4