rt_gccstream/gcc/testsuite/gfortran.dg/bound_simplification_1.f90

28 lines
612 B
Fortran

! { dg-do run }
! { dg-options "" }
implicit none
real :: f(10,10,10,3,4)
integer, parameter :: upper(5) = ubound(f), lower(5) = lbound (f)
integer :: varu(5), varl(5)
varu(:) = ubound(f)
varl(:) = lbound(f)
if (any (varu /= upper)) call abort
if (any (varl /= lower)) call abort
call check (f, upper, lower)
call check (f, ubound(f), lbound(f))
contains
subroutine check (f, upper, lower)
implicit none
integer :: upper(5), lower(5)
real :: f(:,:,:,:,:)
if (any (ubound(f) /= upper)) call abort
if (any (lbound(f) /= lower)) call abort
end subroutine check
end