I am seeing the following regression failure for current CVS. On my OS,
BSD/OS 4.3, it seems once you hit Infinity, you can't negate it.
/usr/include/math.h has:
/* Generate an overflow to create +Inf; the multiply shuts up gcc 1 */
#define HUGE_VAL (1e250*1e250) /* IEEE: positive infinity */
and our float4in code has:
else if (strcasecmp(num, "-Infinity") == 0)
val = -HUGE_VAL;
Seems that doesn't work for me.
---------------------------------------------------------------------------
*** ./expected/float4.out Sat Mar 13 23:07:10 2004
--- ./results/float4.out Sat Mar 13 23:10:30 2004
***************
*** 58,65 ****
SELECT ' -INFINiTY '::float4;
float4
! -----------
! -Infinity
(1 row)
-- bad special inputs
--- 58,65 ----
SELECT ' -INFINiTY '::float4;
float4
! ----------
! Infinity
(1 row)
-- bad special inputs
======================================================================
*** ./expected/float8.out Sat Mar 13 23:07:10 2004
--- ./results/float8.out Sat Mar 13 23:10:30 2004
***************
*** 58,65 ****
SELECT ' -INFINiTY '::float8;
float8
! -----------
! -Infinity
(1 row)
-- bad special inputs
--- 58,65 ----
SELECT ' -INFINiTY '::float8;
float8
! ----------
! Infinity
(1 row)
-- bad special inputs
--
Bruce Momjian | http://candle.pha.pa.us
[EMAIL PROTECTED] | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073
---------------------------(end of broadcast)---------------------------
TIP 4: Don't 'kill -9' the postmaster