Fix float4/8 to handle Infinity and Nan consistently, e.g. Infinity is a

Bruce Momjian <bruce@momjian.us>

Commit: f9ac414c35ea084ff70c564ab2c32adb06d5296f
Author: Bruce Momjian <bruce@momjian.us>
Date: 2007-01-02T20:00:50Z
Releases: 8.3.0
Fix float4/8 to handle Infinity and Nan consistently, e.g. Infinity is a
valid result from a computation if one of the input values was infinity.
The previous code assumed an operation that returned infinity was an
overflow.

Handle underflow/overflow consistently, and add checks for aggregate
overflow.

Consistently prevent Inf/Nan from being cast to integer data types.

Fix INT_MIN % -1 to prevent overflow.

Update regression results for new error text.

Per report from Roman Kononov.

Files