Visible to Intel only — GUID: GUID-1751C96A-5BBA-4160-AF0B-6AEE8E178EEF
Visible to Intel only — GUID: GUID-1751C96A-5BBA-4160-AF0B-6AEE8E178EEF
IEEE_GET_ROUNDING_MODE
Intrinsic Module Subroutine (Generic): Stores the current IEEE rounding mode. This is an impure subroutine.
USE, INTRINSIC :: IEEE_ARITHMETIC
CALL IEEE_GET_ROUNDING_MODE (round_value [, radix])
round_value |
(Output) Must be scalar and of type TYPE (IEEE_ROUND_TYPE). It returns one of the following IEEE floating-point rounding values: IEEE_DOWN, IEEE_NEAREST, IEEE_TO_ZERO, or IEEE_UP; otherwise, IEEE_OTHER. The result can only be used if IEEE_SET_ROUNDING_MODE is invoked. |
radix |
(Input; optional) Must be an integer scalar with a value of two or ten. The rounding mode queried is the binary rounding mode, unless radix is present with the value ten, in which case it is the decimal rounding mode queried. |
Consider the following:
USE, INTRINSIC :: IEEE_ARITHMETIC
TYPE(IEEE_ROUND_TYPE) ROUND
...
CALL IEEE_GET_ROUNDING_MODE(ROUND) ! Stores the rounding mode
CALL IEEE_SET_ROUNDING_MODE(IEEE_UP) ! Resets the rounding mode
...
CALL IEEE_SET_ROUNDING_MODE(ROUND) ! Restores the previous rounding mode