OSDN Git Service

gcc/fortran/
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gfortran.dg / reshape_empty_1.f03
1 ! { dg-do run }
2 ! { dg-options "-fdump-tree-original" }
3 !
4 ! PR fortran/38184
5 ! invariant RESHAPE not expanded if SOURCE is empty.
6 !
7 ! Original program by James Van Buskirk
8
9 integer, parameter :: N = 3
10 integer, parameter :: A(N,N) = reshape([integer::],[N,N],reshape([1],[N+1],[2]))
11 integer, parameter :: K = N*A(2,2)+A(2,3)
12 integer :: B(N,N) = reshape([1,2,2,2,1,2,2,2,1],[3,3])
13 integer :: i
14 i = 5
15 if (any(A /= B)) call abort
16 if (K /= i) call abort
17 end
18
19 ! { dg-final { scan-tree-dump-times "\\\{1, 2, 2, 2, 1, 2, 2, 2, 1\\\}" 2 "original" } }
20 ! { dg-final { cleanup-tree-dump "original" } }