view gcc/testsuite/gfortran.dg/array_constructor_34.f90 @ 158:494b0b89df80 default tip

...
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 25 May 2020 18:13:55 +0900
parents 04ced10e8804
children
line wrap: on
line source

! { dg-do compile }
! PR32489 Endless loop when compiling.
! Derived from fft257.f90, Public domain 2004 James Van Buskirk.
! Note: The problem solved here was not an infinite loop issue. Middle-end
! could not handle the array constructor unfolded by the front end.
! WARNING: Potential resource hog.
! Jerry DeLisle  <jvdelisle@gcc.gnu.org>
program test
   implicit none
   integer, parameter :: dp = selected_real_kind(15,300)
   integer, parameter :: N = 257
   complex(dp) h1(0:N-1)
   complex(dp) h2(0:N-1)
   complex(dp) hh(0:N-1)
   complex(dp), parameter :: ri(2) = (/(1,0),(0,1)/)
   integer i, j, k, L
   real(dp) pi

   pi = 4*atan(1.0_dp)
   do i = 0, N-1
     do j = 1, 2
       h2 = 0
       h2(i) = ri(j)
       h1 = (/(sum((/(exp(-2*pi*(0,1)*mod(k*L,N)/N)*h2(L),L=0,N-1)/)),k=0,N-1)/)
     end do
   end do
end program test