Index: src/backend/utils/adt/selfuncs.c
===================================================================
RCS file: /cvsroot/pgsql/src/backend/utils/adt/selfuncs.c,v
retrieving revision 1.210
diff -c -c -r1.210 selfuncs.c
*** src/backend/utils/adt/selfuncs.c	24 Jul 2006 01:19:48 -0000	1.210
--- src/backend/utils/adt/selfuncs.c	26 Jul 2006 17:13:26 -0000
***************
*** 2956,2962 ****
  		 * == as you'd expect.  Can't any of these people program their way
  		 * out of a paper bag?
  		 */
! 		xfrmlen = strxfrm(NULL, val, 0);
  		xfrmstr = (char *) palloc(xfrmlen + 1);
  		xfrmlen2 = strxfrm(xfrmstr, val, xfrmlen + 1);
  		Assert(xfrmlen2 <= xfrmlen);
--- 2956,2970 ----
  		 * == as you'd expect.  Can't any of these people program their way
  		 * out of a paper bag?
  		 */
! #if _MSC_VER == 1400	/* VS.Net 2005 */
! 		/* http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=99694 */
! 		{
! 			char x[1];
! 			xfrmlen = strxfrm(x, val, 0);
! 		}
! #else
! 	    xfrmlen = strxfrm(NULL, val, 0);
! #endif
  		xfrmstr = (char *) palloc(xfrmlen + 1);
  		xfrmlen2 = strxfrm(xfrmstr, val, xfrmlen + 1);
  		Assert(xfrmlen2 <= xfrmlen);
