Index: src/backend/utils/adt/timestamp.c
===================================================================
RCS file: /cvsroot/pgsql/src/backend/utils/adt/timestamp.c,v
retrieving revision 1.132
diff -c -c -r1.132 timestamp.c
*** src/backend/utils/adt/timestamp.c	12 Jul 2005 16:04:58 -0000	1.132
--- src/backend/utils/adt/timestamp.c	20 Jul 2005 03:38:52 -0000
***************
*** 2201,2207 ****
  	result->time += (months - result->month) * INT64CONST(30) *
  					USECS_PER_DAY;
  #else
! 	result->month = rint(months);
  	result->time = JROUND(span1->time * factor);
  	/* evaluate fractional months as 30 days */
  	result->time += JROUND((months - result->month) * 30 * SECS_PER_DAY);
--- 2201,2207 ----
  	result->time += (months - result->month) * INT64CONST(30) *
  					USECS_PER_DAY;
  #else
! 	result->month = (int)months;
  	result->time = JROUND(span1->time * factor);
  	/* evaluate fractional months as 30 days */
  	result->time += JROUND((months - result->month) * 30 * SECS_PER_DAY);
***************
*** 2246,2252 ****
  					INT64CONST(30) * USECS_PER_DAY) / factor;
  #else
  	months = span->month / factor;
! 	result->month = rint(months);
  	result->time = JROUND(span->time / factor);
  	/* evaluate fractional months as 30 days */
  	result->time += JROUND((months - result->month) * 30 * SECS_PER_DAY);
--- 2246,2252 ----
  					INT64CONST(30) * USECS_PER_DAY) / factor;
  #else
  	months = span->month / factor;
! 	result->month = (int)months;
  	result->time = JROUND(span->time / factor);
  	/* evaluate fractional months as 30 days */
  	result->time += JROUND((months - result->month) * 30 * SECS_PER_DAY);
