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

Reply via email to