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