From ee7b3e9ab100270668ba5a9f1d6d78912d691928 Mon Sep 17 00:00:00 2001 From: Jerry DeLisle Date: Fri, 27 Oct 2006 20:50:15 +0000 Subject: [PATCH] re PR fortran/29563 (Internal read loses data.) 2006-10-27 Jerry DeLisle PR libgfortran/29563 * gfortran.dg/error_recovery_2.f90: New test. From-SVN: r118085 --- gcc/testsuite/ChangeLog | 5 +++++ .../gfortran.dg/error_recovery_2.f90 | 21 +++++++++++++++++++ 2 files changed, 26 insertions(+) create mode 100644 gcc/testsuite/gfortran.dg/error_recovery_2.f90 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 475ead71902..78d1f60ad23 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2006-10-27 Jerry DeLisle + + PR libgfortran/29563 + * gfortran.dg/error_recovery_2.f90: New test. + 2006-10-26 Richard Guenther * gcc.target/i386/i386.exp: Use glob, not find to collect diff --git a/gcc/testsuite/gfortran.dg/error_recovery_2.f90 b/gcc/testsuite/gfortran.dg/error_recovery_2.f90 new file mode 100644 index 00000000000..445b0b77781 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/error_recovery_2.f90 @@ -0,0 +1,21 @@ +! { dg-do compile } +! PR27954 Internal compiler error on bad statements +! Derived from test case submitted in PR. +subroutine bad1 + character*20 :: y, x 00 ! { dg-error "Syntax error" } + data y /'abcdef'/, x /'jbnhjk'/ pp ! { dg-error "Syntax error" } +end subroutine bad1 + +subroutine bad2 + character*20 :: y, x 00 ! { dg-error "Syntax error" } + data y /'abcdef'/, x /'jbnhjk'/ pp ! { dg-error "Syntax error" } + print *, "basket case." +end subroutine bad2 + +subroutine bad3 + implicit none + character*20 :: y, x 00 ! { dg-error "Syntax error" } + data y /'abcdef'/, x /'jbnhjk'/ pp ! { dg-error "Syntax error" } + print *, "basket case that segfaults without patch." +end subroutine bad3 +