You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I think I have spotted an error in tstiee.f, where the comments about what functions calls are doing do not match what the calls are actually doing.
On lines 603-619 of tstiee.f in the function ILAENV there are calls to the function IEEECK:
*
* ISPEC = 10: ieee NaN arithmetic can be trusted not to trap
*
ILAENV = 1
IF (ILAENV .EQ. 1) THEN
ILAENV = IEEECK( 0, 0.0, 1.0 )
ENDIF
RETURN
*
1100 CONTINUE
*
* ISPEC = 11: infinity arithmetic can be trusted not to trap
*
ILAENV = 1
IF (ILAENV .EQ. 1) THEN
ILAENV = IEEECK( 1, 0.0, 1.0 )
ENDIF
According to the comment starting on line 645 the first parameter (ISPEC) of IEEECK has the following meanings:
* ISPEC (input) INTEGER
* Specifies whether to test just for inifinity arithmetic
* or whether to test for infinity and NaN arithmetic.
* = 0: Verify infinity arithmetic only.
* = 1: Verify infinity and NaN arithmetic.
Therefore I think the parameters are the wrong way round in the calls to IEECK: in the first call, to check NaN arithmetic the call should be:
ILAENV = IEEECK( 1, 0.0, 1.0 )
because calling IEEECK with ISPEC=0 (as the code currently does) will mean it exits before the code checking NaN arithmetic is reached (see line 725 of tstiee.f).
The second call, to check infinity arithmetic, should be:
ILAENV = IEEECK( 0, 0.0, 1.0 )
The text was updated successfully, but these errors were encountered:
I think I have spotted an error in tstiee.f, where the comments about what functions calls are doing do not match what the calls are actually doing.
On lines 603-619 of tstiee.f in the function ILAENV there are calls to the function IEEECK:
According to the comment starting on line 645 the first parameter (ISPEC) of IEEECK has the following meanings:
Therefore I think the parameters are the wrong way round in the calls to IEECK: in the first call, to check NaN arithmetic the call should be:
because calling IEEECK with ISPEC=0 (as the code currently does) will mean it exits before the code checking NaN arithmetic is reached (see line 725 of tstiee.f).
The second call, to check infinity arithmetic, should be:
The text was updated successfully, but these errors were encountered: