F>=1 .if 3F<=8 . if 3F>1 .if 3F<6 .ds an-extra3 "BSD Program- TRAPOV(3F) BSD Reference Manual TRAPOV(3F) mer's Manual NNAAMMEE trapov - trap and repair floating point overflow SSYYNNOOPPSSIISS ssuubbrroouuttiinnee ttrraappoovv ((nnuummeessgg,, rrttnnvvaall)) ddoouubbllee pprreecciissiioonn rrttnnvvaall DDEESSCCRRIIPPTTIIOONN NNOOTTEE:: TThhiiss rroouuttiinnee aapppplliieess oonnllyy ttoo tthhee oollddeerr VVAAXX 1111//778800''ss.. VVAAXX ccoommppuutteerrss mmaaddee oorr uuppggrraaddeedd ssiinnccee sspprriinngg 11998833 hhaannddllee eerrrroorrss ddiiffffeerreennttllyy.. See _t_r_p_f_p_e(3F) for the newer error handler. This routine has always been ineffective on the VAX 11/750. It is a null routine on the PDP11. This call sets up signal handlers to trap arithmetic exceptions and the use of illegal operands. Trapping arithmetic exceptions allows the user's program to proceed from instances of floating point overflow or divide by zero. The result of such operations will be an illegal floating point value. The subsequent use of the illegal operand will be trapped and the operand replaced by the specified value. The first _n_u_m_e_s_g occurrences of a floating point arith- metic error will cause a message to be written to the standard error file. If the resulting value is used, the value given for _r_t_n_v_a_l will replace the illegal operand generated by the arithmetic error. _R_t_n_v_a_l must be a dou- ble precision value. For example, ``0d0'' or ``dflmax()''. FFIILLEESS /usr/lib/libF77.a SSEEEE AALLSSOO trpfpe(3F), signal(3F), range(3F) BBUUGGSS Other arithmetic exceptions can be trapped but not repaired. There is no way to distinguish between an integer value of 32768 and the illegal floating point form. Therefore such an integer value may get replaced while repairing the use of an illegal operand. 4.2 Berkeley Distribution June 5, 1993 1