From 99634fd7da6eed1a08c6c1c0b6d458d02564bdd8 Mon Sep 17 00:00:00 2001 From: jvdelisle <jvdelisle@138bc75d-0d04-0410-961f-82ee72b054a4> Date: Fri, 12 Jan 2007 23:36:25 +0000 Subject: [PATCH] 2007-01-12 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR libgfortran/30435 * gfortran.dg/list_read_6.f90: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@120738 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/testsuite/ChangeLog | 6 ++++ gcc/testsuite/gfortran.dg/list_read_6.f90 | 42 +++++++++++++++++++++++ 2 files changed, 48 insertions(+) create mode 100644 gcc/testsuite/gfortran.dg/list_read_6.f90 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 15167d5c4e17..41ebdf225701 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2007-01-12 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR libgfortran/30435 + * gfortran.dg/list_read_6.f90: New test. + 2007-01-12 Olga Golovanevsky <olga@il.ibm.com> * gcc.dg/torture/pr24750-1.c: Add prototype of free. @@ -50,6 +55,7 @@ * gcc.dg/fold-compare-2.c: New test case for fold_comparison. +>>>>>>> .r120737 2007-01-09 Brooks Moses <brooks.moses@codesourcery.com> * gfortran.dg/chkbits.f90: Added IBCLR tests; test calls diff --git a/gcc/testsuite/gfortran.dg/list_read_6.f90 b/gcc/testsuite/gfortran.dg/list_read_6.f90 new file mode 100644 index 000000000000..5bab50bab13f --- /dev/null +++ b/gcc/testsuite/gfortran.dg/list_read_6.f90 @@ -0,0 +1,42 @@ +! { dg-do run } +! PR30435 Slash at end of input not recognized according to standard. +! Test case from PR by Steve Kargl. + +program t + integer a, b, c, d + ! This worked as expected + open(unit=10, file='tmp.dat') + write(10,*) '1 2 3 / 4' + rewind(10) + a = -1; b = -1; c = -1; d = -1; + read(10,*) a,b,c,d + if (d.ne.-1) call abort() + + ! This worked as expected + rewind(10) + write(10,*) '1 2 3 /' + rewind(10) + a = -2; b = -2; c = -2; d = -2; + read(10,*) a,b,c,d + if (d.ne.-2) call abort() + + ! This worked as expected. + rewind(10) + write(10,*) '1 2' + write(10,*) '3 /' + rewind(10) + a = -3; b = -3; c = -3; d = -3; + read(10,*) a,b,c,d + if (d.ne.-3) call abort() + + ! This failed before the patch. + rewind(10) + write(10,*) '1 2 3' + write(10,*) '/' + rewind(10) + a = -4; b = -4; c = -4; d = -4; + read(10,*) a,b,c,d + if (d.ne.-4) call abort() + + close(unit=10, status='delete') +end program t -- GitLab