Index: src/backend/parser/parse_coerce.c
===================================================================
RCS file: /home/rbt/work/postgresql/cvs/pgsql-server/src/backend/parser/parse_coerce.c,v
retrieving revision 2.96
diff -c -r2.96 parse_coerce.c
*** src/backend/parser/parse_coerce.c	29 Apr 2003 22:13:10 -0000	2.96
--- src/backend/parser/parse_coerce.c	24 May 2003 17:33:58 -0000
***************
*** 63,68 ****
--- 63,70 ----
  					  CoercionContext ccontext,
  					  CoercionForm cformat)
  {
+ 	Oid targetbasetype = getBaseType(targettype);
+ 
  	if (can_coerce_type(1, &exprtype, &targettype, ccontext))
  		expr = coerce_type(pstate, expr, exprtype, targettype,
  						   ccontext, cformat);
***************
*** 75,81 ****
  	 * entries in pg_cast that parallel all the ones for text.
  	 */
  	else if (ccontext >= COERCION_ASSIGNMENT &&
! 			 (targettype == BPCHAROID || targettype == VARCHAROID))
  	{
  		Oid			text_id = TEXTOID;
  
--- 77,83 ----
  	 * entries in pg_cast that parallel all the ones for text.
  	 */
  	else if (ccontext >= COERCION_ASSIGNMENT &&
! 			 (targetbasetype == BPCHAROID || targetbasetype == VARCHAROID))
  	{
  		Oid			text_id = TEXTOID;
  
