Roman Kononov wrote:
> On 12/27/2006 01:15 PM, Tom Lane wrote:
> > I'm not convinced that you're fixing things so much as doing your best
> > to destroy IEEE-compliant float arithmetic behavior.
> > 
> > I think what we should probably consider is removing CheckFloat4Val
> > and CheckFloat8Val altogether, and just letting the float arithmetic
> > have its head.  Most modern hardware gets float arithmetic right per
> > spec, and we shouldn't be second-guessing it.
> 
> I vote for complete IEEE-compliance. No exceptions with pure floating
> point math. Float -> int conversions should reject overflow, INF and
> NaN. Float -> numeric conversions should reject INF.

I think we did that in current CVS.  Feel free to download a snapshot
from the ftp server and try it out.

> > A slightly less radical proposal is to reject only the case where
> > isinf(result) and neither input isinf(); and perhaps likewise with
> > respect to NaNs.
> 
> This might look like another possibility for confusion. For example
> INF-INF=NaN.

Yep, that's what we get now.

-- 
  Bruce Momjian   [EMAIL PROTECTED]
  EnterpriseDB    http://www.enterprisedb.com

  + If your life is a hard drive, Christ can be your backup. +

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

Reply via email to