On Mon, Jan 24, 2022 at 04:44:53PM -0800, Steve Kargl wrote:
> % gmake check-fortran  RUNTESTFLAGS="ieee.exp=sign\*"
> 

Line 42 of signal_1.f90 looks wrong unless the
line is testing conversion on assignment.  Should
y be x?

Instrumented signal_1.f90.

Changed

    if (ieee_class(z) /= ieee_signaling_nan) stop 300

to

    if (ieee_class(z) /= ieee_signaling_nan) then
        print '(G0,1X,Z0)', z, z
        z = ieee_value(z, ieee_quiet_nan)
        print '(G0,1X,Z0)', z, z
        z = ieee_value(z, ieee_signaling_nan)
        print '(G0,1X,Z0)', z, z
!       stop 300
    end if


Got the following in testsuite/gfortran/gfortran.log

NaN 7FFFA000000000000000
NaN 7FFFC000000000000000
NaN 7FFFA000000000000000

and with "stop 300" commented out everything passes.  Now to
chase down hex representations for sNaN and qNaN.  Suspect
ieee_class() is broken.
-- 
Steve

Reply via email to