OSDN Git Service

PR fortran/33197
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gfortran.dg / hypot_1.f90
1 ! { dg-do run }
2
3 program test
4   implicit none
5
6   interface check
7     procedure check_r4
8     procedure check_r8
9   end interface check
10
11   real(kind=4) :: x4, y4
12   real(kind=8) :: x8, y8
13
14   x8 = 1.9_8 ; x4 = 1.9_4
15   y8 = -2.1_8 ; y4 = -2.1_4
16
17   call check(hypot(x8,y8), hypot(1.9_8,-2.1_8))
18   call check(hypot(x4,y4), hypot(1.9_4,-2.1_4))
19
20 contains
21   subroutine check_r4 (a, b)
22     real(kind=4), intent(in) :: a, b
23     if (abs(a - b) > 1.e-5 * abs(b)) call abort
24   end subroutine
25   subroutine check_r8 (a, b)
26     real(kind=8), intent(in) :: a, b
27     if (abs(a - b) > 1.e-7 * abs(b)) call abort
28   end subroutine
29 end program test