Source: CSV HEAD (As of yesterday)
Platform: HP PARISC (HP 710)
OS: Debian Sarge
File: src/backend/utils/adt/float.c
Change:
        CheckFloat4Val(result);
To:
        CheckFloat4Val((float4)result);

I tested this on my parisc box and it passed all tests.  This could just be an 
issue with a very old CPU/floating 
point unit.

I can send a patch in, but since this seems to work on other platforms, I 
thought I would ask here first.

Sorry about the cryptic message, it was before my first cup of java.

Jim


------------------------------------------------
Datum
float4div(PG_FUNCTION_ARGS)
{
        float4          arg1 = PG_GETARG_FLOAT4(0);
        float4          arg2 = PG_GETARG_FLOAT4(1);
        double          result;

        if (arg2 == 0.0)
                ereport(ERROR,
                                (errcode(ERRCODE_DIVISION_BY_ZERO),
                                 errmsg("division by zero")));

        /* Do division in float8, then check for overflow */
        result = (float8) arg1 / (float8) arg2;

        CheckFloat4Val(result);

        PG_RETURN_FLOAT4((float4) result);
}



---------- Original Message -----------
From: Tom Lane <[EMAIL PROTECTED]>
To: "Jim Buttafuoco" <[EMAIL PROTECTED]>
Cc: "pgsql-hackers" <pgsql-hackers@postgresql.org>
Sent: Tue, 01 Feb 2005 12:06:30 -0500
Subject: Re: [HACKERS] float4 regression test failed on linux parisc 

> "Jim Buttafuoco" <[EMAIL PROTECTED]> writes:
> > I am getting a float4 regression test failure.  I have extracted the SQL 
> > from both the float4 and float8 tests 
below.  
> > Both should return NAN
> 
> > I looked at the code,  The float4div does the operation as float8's then 
> > checks the value.  The value is a valid 
> > float8 NAN.  The call to CheckFloat4Val is missing a cast back to float4.  
> > If I put the cast in I get the expected 
> > results (NAN).
> 
> This report is about as clear as mud :-(.  What platform is this, and
> what source code change are you proposing *exactly* ?
> 
>                       regards, tom lane
> 
> ---------------------------(end of broadcast)---------------------------
> TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]
------- End of Original Message -------


---------------------------(end of broadcast)---------------------------
TIP 9: the planner will ignore your desire to choose an index scan if your
      joining column's datatypes do not match

Reply via email to