! RUN: %python %S/test_folding.py %s %flang_fc1 ! Test implementations of IEEE inquiry functions module m use ieee_arithmetic logical, parameter :: test_ieee_support_datatype = ieee_support_datatype() & .and. ieee_support_datatype(1.0_2) & .and. ieee_support_datatype(1.0_3) & .and. ieee_support_datatype(1.0_4) & .and. ieee_support_datatype(1.0_8) & .and. ieee_support_datatype(1.0_10) & .and. ieee_support_datatype(1.0_16) logical, parameter :: test_ieee_support_denormal = ieee_support_denormal() & .and. ieee_support_denormal(1.0_2) & .and. ieee_support_denormal(1.0_3) & .and. ieee_support_denormal(1.0_4) & .and. ieee_support_denormal(1.0_8) & .and. ieee_support_denormal(1.0_10) & .and. ieee_support_denormal(1.0_16) logical, parameter :: test_ieee_support_divide = ieee_support_divide() & .and. ieee_support_divide(1.0_2) & .and. ieee_support_divide(1.0_3) & .and. ieee_support_divide(1.0_4) & .and. ieee_support_divide(1.0_8) & .and. ieee_support_divide(1.0_10) & .and. ieee_support_divide(1.0_16) logical, parameter :: test_ieee_support_inf = ieee_support_inf() & .and. ieee_support_inf(1.0_2) & .and. ieee_support_inf(1.0_3) & .and. ieee_support_inf(1.0_4) & .and. ieee_support_inf(1.0_8) & .and. ieee_support_inf(1.0_10) & .and. ieee_support_inf(1.0_16) logical, parameter :: test_ieee_support_io = ieee_support_io() & .and. ieee_support_io(1.0_2) & .and. ieee_support_io(1.0_3) & .and. ieee_support_io(1.0_4) & .and. ieee_support_io(1.0_8) & .and. ieee_support_io(1.0_10) & .and. ieee_support_io(1.0_16) logical, parameter :: test_ieee_support_nan = ieee_support_nan() & .and. ieee_support_nan(1.0_2) & .and. ieee_support_nan(1.0_3) & .and. ieee_support_nan(1.0_4) & .and. ieee_support_nan(1.0_8) & .and. ieee_support_nan(1.0_10) & .and. ieee_support_nan(1.0_16) logical, parameter :: test_ieee_support_sqrt = ieee_support_sqrt() & .and. ieee_support_sqrt(1.0_2) & .and. ieee_support_sqrt(1.0_3) & .and. ieee_support_sqrt(1.0_4) & .and. ieee_support_sqrt(1.0_8) & .and. ieee_support_sqrt(1.0_10) & .and. ieee_support_sqrt(1.0_16) logical, parameter :: test_ieee_support_standard = ieee_support_standard() & .and. ieee_support_standard(1.0_2) & .and. ieee_support_standard(1.0_3) & .and. ieee_support_standard(1.0_4) & .and. ieee_support_standard(1.0_8) & .and. ieee_support_standard(1.0_10) & .and. ieee_support_standard(1.0_16) logical, parameter :: test_ieee_support_subnormal = ieee_support_subnormal() & .and. ieee_support_subnormal(1.0_2) & .and. ieee_support_subnormal(1.0_3) & .and. ieee_support_subnormal(1.0_4) & .and. ieee_support_subnormal(1.0_8) & .and. ieee_support_subnormal(1.0_10) & .and. ieee_support_subnormal(1.0_16) logical, parameter :: test_ieee_support_underflow_control = ieee_support_underflow_control() & .and. ieee_support_underflow_control(1.0_2) & .and. ieee_support_underflow_control(1.0_3) & .and. ieee_support_underflow_control(1.0_4) & .and. ieee_support_underflow_control(1.0_8) & .and. ieee_support_underflow_control(1.0_10) & .and. ieee_support_underflow_control(1.0_16) end module