aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/gfortran.dg/error_recovery_2.f9021
2 files changed, 26 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 475ead7..78d1f60 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2006-10-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libgfortran/29563
+ * gfortran.dg/error_recovery_2.f90: New test.
+
2006-10-26 Richard Guenther <rguenther@suse.de>
* 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 0000000..445b0b7
--- /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
+