re PR fortran/71961 (178.galgel in SPEC CPU 2000 is miscompiled)
authorThomas Koenig <tkoenig@gcc.gnu.org>
Sun, 7 Aug 2016 15:25:56 +0000 (15:25 +0000)
committerThomas Koenig <tkoenig@gcc.gnu.org>
Sun, 7 Aug 2016 15:25:56 +0000 (15:25 +0000)
2016-08-07  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/71961
* gfortran.dg/pr70040.f90:  New testcase.

From-SVN: r239221

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

index bc95f00edaaca5ca663cad70f2a8dad7c3a090de..b2f07c99f1d65528f77b0a4c3bdbc92c444ff932 100644 (file)
@@ -1,3 +1,8 @@
+2016-08-07  Thomas Koenig  <tkoenig@gcc.gnu.org>
+
+       PR fortran/71961
+       * gfortran.dg/pr70040.f90:  New testcase.
+
 2016-08-07  Thomas Koenig  <tkoenig@gcc.gnu.org>
 
        PR fortran/71961
diff --git a/gcc/testsuite/gfortran.dg/pr70040.f90 b/gcc/testsuite/gfortran.dg/pr70040.f90
new file mode 100644 (file)
index 0000000..080083e
--- /dev/null
@@ -0,0 +1,19 @@
+! { dg-do compile }
+! PR 70040 - used to cause an ICE.
+! Test case by Martin Reinecke
+program bugrep
+  implicit none
+  type :: string
+    character (len=:), allocatable :: s
+  end type
+
+  integer l
+  type(string), allocatable, dimension(:) :: foo
+  character(len=:),allocatable ::tmp
+  allocate(foo(20))
+  do l= 1, 20
+    tmp = foo(5)%s
+    foo(5)%s = foo(l)%s
+    foo(l)%s = tmp
+  enddo
+end program