re PR fortran/28971 (ICE: Segmentation fault on valid code)
authorPaul Thomas <pault@gcc.gnu.org>
Tue, 12 Sep 2006 19:38:48 +0000 (19:38 +0000)
committerPaul Thomas <pault@gcc.gnu.org>
Tue, 12 Sep 2006 19:38:48 +0000 (19:38 +0000)
2006-09-12  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/28971
gfortran.dg/pr28971.f90: New test to act as a backstop in case
this undiagnosed regression reappears.

From-SVN: r116904

gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/pr28971.f90 [new file with mode: 0644]

index 885bcd7303b4e7938fdacd79f859a301db6f2013..7764fb05ab2df43a4aa0ed52fb4f66d8c28f6d26 100644 (file)
@@ -1,3 +1,9 @@
+2006-09-12  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/28971
+       gfortran.dg/pr28971.f90: New test to act as a backstop in case
+       this undiagnosed regression reappears.
+
 2006-09-12  Kazu Hirata  <kazu@codesourcery.com>
 
        * lib/c-torture.exp (c-torture-compile, c-torture-execute):
diff --git a/gcc/testsuite/gfortran.dg/pr28971.f90 b/gcc/testsuite/gfortran.dg/pr28971.f90
new file mode 100644 (file)
index 0000000..23045fc
--- /dev/null
@@ -0,0 +1,20 @@
+! { dg-do compile }
+! This caused an ICE for gfortrans of July 2006 vintage.  It was a regression
+! that "fixed" itself.  The cause and the fix are mysteries.  This test is intended
+! to signal any further regression, should it occur.
+!
+! Contributed by Oskar Enoksson  <enok@lysator.liu.se>
+
+SUBROUTINE BUG(A,B)
+  IMPLICIT NONE
+  
+  INTEGER   :: A
+  INTEGER   :: B(2)
+  
+  INTEGER, PARAMETER :: C(2) = (/ 1,2 /)
+  
+  WHERE (C(:).EQ.A)
+    B = -1
+  END WHERE
+END SUBROUTINE BUG
+