This patch forces postgres95 to assume any floating-point value is a
float8. It removes the requirement that you cast all floating-point
constants to float8.
We can remove alot of casts in the regression test after we are sure
this works.
If I have missed anything, would someone let me know. I have tested
inserts of floating-point values into float8 fields, and it worked well.
Casting the number to float4 showed the same precision loss as previous
uncast values showed.
Submitted by: Bruce Momjian <maillist@candle.pha.pa.us>
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/parser/gram.y,v 1.5 1996/08/06 16:43:06 scrappy Exp $
+ * $Header: /cvsroot/pgsql/src/backend/parser/gram.y,v 1.6 1996/08/13 01:29:33 scrappy Exp $
*
* HISTORY
* AUTHOR DATE MAJOR EVENT
return "int2";
else if (!strcasecmp(name, "float") ||
!strcasecmp(name, "real"))
- return "float4";
+ return "float8";
else
return name;
}
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/parser/Attic/parse_query.c,v 1.2 1996/07/19 07:24:09 scrappy Exp $
+ * $Header: /cvsroot/pgsql/src/backend/parser/Attic/parse_query.c,v 1.3 1996/08/13 01:29:34 scrappy Exp $
*
*-------------------------------------------------------------------------
*/
case T_Float:
{
- float32 dummy;
- tp = type("float4");
+ float64 dummy;
+ tp = type("float8");
- dummy = (float32)palloc(sizeof(float32data));
+ dummy = (float64)palloc(sizeof(float64data));
*dummy = floatVal(value);
- val = Float32GetDatum(dummy);
+ val = Float64GetDatum(dummy);
}
break;