summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gfortran.dg/do_corner_warn.f90
blob: 07484d3ca7bb9e9ae96600c6402782f81f989564 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
! { dg-options "-Wundefined-do-loop" }
! Program to check corner cases for DO statements.

program do_1
  implicit none
  integer i, j

  ! limit=HUGE(i), step 1
  j = 0
  do i = HUGE(i) - 10, HUGE(i), 1 ! { dg-warning "is undefined as it overflows" }
    j = j + 1
  end do
  if (j .ne. 11) call abort

  ! limit=-HUGE(i)-1, step -1
  j = 0
  do i = -HUGE(i) + 10 - 1, -HUGE(i) - 1, -1 ! { dg-warning "is undefined as it underflows" }
    j = j + 1
  end do
  if (j .ne. 11) call abort

end program