! { dg-do run } ! { dg-require-effective-target fortran_large_real } ! { dg-xfail-if "" { "*-*-freebsd*" } { "*" } { "" } } ! Testing erf and erfc library calls on large real kinds (larger than kind=8) implicit none integer,parameter :: k = selected_real_kind (precision (0.0_8) + 1) real(8),parameter :: eps = 1e-8 real(kind=k) :: x real(8) :: y #define TEST_FUNCTION(func,val) \ x = val ;\ y = x ;\ x = func (x) ;\ y = func (y) ;\ if (abs((y - x) / y) > eps) call abort TEST_FUNCTION(erf,1.45123231) TEST_FUNCTION(erfc,-0.123789) end