summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gfortran.dg/reshape_order_5.f90
blob: 2ef5fce6db8acf02489879347ef4eca8d3db6967 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
! { dg-do compile }
!
! PR fortran/37203 - check RESHAPE arguments
!

  integer, dimension(6) :: source1 = (/ 1, 2, 3, 4, 5, 6 /)
  integer, dimension(2) :: shape1 = (/ 2, 5/)
  integer, dimension(2) :: pad1 = (/ 0, 0/)
  integer, dimension(2) :: t(2,5)

  t = reshape(source1, shape1, pad1, (/2, 1/))        ! ok
  t = reshape(source1, shape1, pad1, (/2.1, 1.2/))    ! { dg-error "must be INTEGER" }
  t = reshape(source1, shape1, pad1, (/2, 2/))        ! { dg-error "invalid permutation" }
  t = reshape(source1, shape1, pad1, (/2, 3/))        ! { dg-error "out-of-range dimension" }
  t = reshape(source1, shape1, pad1, (/2/))           ! { dg-error "wrong number of elements" }
end