aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/gfortran.dg/real_compare_1.f90
blob: fd8417706c5557dc9eecb9f34f9e65ecc797f1e1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
! { dg-do compile }
! { dg-options "-Wcompare-reals" }
program main
  real :: a
  complex :: c
  read (*,*) a
  read (*,*) c
  if (a .eq. 3.14) print *,"foo" ! { dg-warning "Equality comparison for REAL" }
  if (3.14 == a) print *,"foo" ! { dg-warning "Equality comparison for REAL" }
  if (a .eq. 3) print *,"foo" ! { dg-warning "Equality comparison for REAL" }
  if (3. == a) print *,"foo" ! { dg-warning "Equality comparison for REAL" }
  if (a .ne. 4.14) print *,"foo" ! { dg-warning "Inequality comparison for REAL" }
  if (4.14 /= a) print *,"foo" ! { dg-warning "Inequality comparison for REAL" }
  if (a .ne. 4) print *,"foo" ! { dg-warning "Inequality comparison for REAL" }
  if (4 /= a) print *,"foo" ! { dg-warning "Inequality comparison for REAL" }

  if (c .eq. (3.14, 2.11)) print *,"foo" ! { dg-warning "Equality comparison for COMPLEX" }
  if ((3.14, 2.11) == a) print *,"foo" ! { dg-warning "Equality comparison for COMPLEX" }
  if (c .ne. (3.14, 2.11)) print *,"foo" ! { dg-warning "Inequality comparison for COMPLEX" }
  if ((3.14, 2.11) /= a) print *,"foo" ! { dg-warning "Inequality comparison for COMPLEX" }
end program main