OSDN Git Service

Fix PR42186.
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gfortran.dg / bounds_check_14.f90
1 ! { dg-do run }
2 ! { dg-options "-fbounds-check" }
3
4 program test
5   integer x(20)
6   integer, volatile :: n
7   n = 1
8   if (size(x(n:2:-3)) /= 0) call abort
9
10   call ha0020(-3)
11   call ha0020(-1)
12 end program test
13
14 subroutine ha0020(mf3)
15   implicit none
16   integer xca(2), xda(2), mf3
17
18   xca = 1
19   xda = -1
20
21   xca(1:2:-1) = xda(1:2:mf3)
22
23   if (any (xca /= 1)) call abort
24   if (any(xda(1:2:mf3) /= xda(1:0))) call abort
25   if (size(xda(1:2:mf3)) /= 0) call abort
26   if (any(shape(xda(1:2:mf3)) /= 0)) call abort
27   if (any(ubound(xda(1:2:mf3)) /= 0)) call abort
28   if (ubound(xda(1:2:mf3),1) /= 0) call abort
29   if (lbound(xda(1:2:mf3),1) /= 1) call abort
30
31 end subroutine