C Sun: f77 -xtypemap=real:64,double:64,integer:64 C Sun: f77 -r8 C SGI: f90 -mips3 -n32 [-d16] -o prec prec.f C SGI: f77 -mips3 -n32 [-d16] -o prec prec.f C GNU: g77 fails PROGRAM hello REAL F DOUBLE PRECISION D C C Sun REAL Q*16 REAL QP*16 REAL QZ*16 REAL QA*16 REAL QB*16 C C IRIX f90 C F=1.0 PRINT *, 'REAL: ', F PRINT *, 'REAL: ', 4*ATAN(F) D=1.0 PRINT *, 'DOUBLE: ', D PRINT *, 'DOUBLE: ', 4*ATAN(D) Q=1.0 PRINT *, 'QUAD: ', Q PRINT *, 'QUAD: ', 4*QATAN(Q) QP=1.0 QZ=1.0 QA=1.0 QB=1.0 1000 QZ = QP QP = QP / 2.0 QB = QA + QP if ( QB.ne.QA ) then goto 1000 endif PRINT *, 'PREC: ', QZ END