|
|
1.1 root 1: .TH TRAPOV 3F "18 July 1983"
2: .UC 4
3: .SH NAME
4: trapov \- trap and repair floating point overflow
5: .SH SYNOPSIS
6: .B subroutine trapov (numesg, rtnval)
7: .br
8: .B double precision rtnval
9: .SH DESCRIPTION
10: This call sets up signal handlers to trap arithmetic exceptions
11: and the use of illegal operands.
12: Trapping arithmetic exceptions allows the user's program to proceed from
13: instances of floating point overflow or divide by zero.
14: The result of such operations will be an illegal floating point value.
15: The subsequent use of the illegal operand will be trapped
16: and the operand replaced by the specified value.
17: .PP
18: The first
19: .I numesg
20: occurrences of a floating point arithmetic error will cause a message
21: to be written to the standard error file.
22: If the resulting value is used, the value given for
23: .I rtnval
24: will replace the illegal operand generated by the arithmetic error.
25: .I Rtnval
26: must be a double precision value. For example, ``0d0'' or ``dflmax()''.
27: .SH FILES
28: .ie \nM /usr/ucb/lib/libF77.a
29: .el /usr/lib/libF77.a
30: .SH SEE ALSO
31: trpfpe(3F), signal(3F), range(3F)
32: .SH BUGS
33: Other arithmetic exceptions can be trapped but not repaired.
34: .PP
35: There is no way to
36: distinguish between an integer value of 32768 and the illegal
37: floating point form.
38: Therefore such an integer value may get replaced while repairing
39: the use of an illegal operand.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.