Index: src/backend/parser/parse_coerce.c =================================================================== RCS file: /home/projects/pgsql/cvsroot/pgsql/src/backend/parser/parse_coerce.c,v retrieving revision 2.58 diff -c -r2.58 parse_coerce.c *** src/backend/parser/parse_coerce.c 2001/06/19 22:39:11 2.58 --- src/backend/parser/parse_coerce.c 2001/06/23 14:21:09 *************** *** 470,475 **** --- 470,476 ---- case (CHAROID): case (NAMEOID): + case (BYTEAOID): case (BPCHAROID): case (VARCHAROID): case (TEXTOID): *************** *** 614,619 **** --- 615,621 ---- result = VARCHAROID; break; + case (BYTEAOID): case (VARCHAROID): result = TEXTOID; break; *************** *** 708,713 **** --- 710,716 ---- case (CHAROID): switch (*arg2) { + case (BYTEAOID): case (BPCHAROID): case (VARCHAROID): case (TEXTOID): *************** *** 772,777 **** --- 775,781 ---- case (CHAROID): switch (*arg2) { + case (BYTEAOID): case (BPCHAROID): case (VARCHAROID): case (TEXTOID): Index: src/backend/parser/parse_target.c =================================================================== RCS file: /home/projects/pgsql/cvsroot/pgsql/src/backend/parser/parse_target.c,v retrieving revision 1.67 diff -c -r1.67 parse_target.c *** src/backend/parser/parse_target.c 2001/05/21 18:42:08 1.67 --- src/backend/parser/parse_target.c 2001/06/23 14:21:09 *************** *** 56,62 **** expr = transformExpr(pstate, node, EXPR_COLUMN_FIRST); if (IsA(expr, Ident) && ((Ident *)expr)->isRel) ! elog(ERROR,"You can't use relation names alone in the target list, try relation.*."); type_id = exprType(expr); type_mod = exprTypmod(expr); --- 56,62 ---- expr = transformExpr(pstate, node, EXPR_COLUMN_FIRST); if (IsA(expr, Ident) && ((Ident *)expr)->isRel) ! elog(ERROR,"You can't use relation names alone in the target list, try relation.*."); type_id = exprType(expr); type_mod = exprTypmod(expr); *************** *** 311,317 **** * string hacks to get transparent conversions w/o explicit * conversions */ ! else if ((attrtype == BPCHAROID) || (attrtype == VARCHAROID)) { Oid text_id = TEXTOID; --- 311,319 ---- * string hacks to get transparent conversions w/o explicit * conversions */ ! else if (attrtype == BPCHAROID || ! attrtype == VARCHAROID || ! attrtype == BYTEAOID) { Oid text_id = TEXTOID; Index: src/include/parser/parse_coerce.h =================================================================== RCS file: /home/projects/pgsql/cvsroot/pgsql/src/include/parser/parse_coerce.h,v retrieving revision 1.29 diff -c -r1.29 parse_coerce.h *** src/include/parser/parse_coerce.h 2001/06/19 22:39:12 1.29 --- src/include/parser/parse_coerce.h 2001/06/23 14:21:14 *************** *** 46,51 **** --- 46,52 ---- || ((t) == BPCHAROID) \ || ((t) == VARCHAROID) \ || ((t) == TEXTOID) \ + || ((t) == BYTEAOID) \ || ((t) == INT4OID) \ || ((t) == INT8OID) \ || ((t) == FLOAT8OID) \ *************** *** 85,94 **** --- 86,101 ---- #define IS_BINARY_COMPATIBLE(a,b) \ (((a) == BPCHAROID && (b) == TEXTOID) \ || ((a) == BPCHAROID && (b) == VARCHAROID) \ + || ((a) == BPCHAROID && (b) == BYTEAOID) \ || ((a) == VARCHAROID && (b) == TEXTOID) \ || ((a) == VARCHAROID && (b) == BPCHAROID) \ + || ((a) == VARCHAROID && (b) == BYTEAOID) \ || ((a) == TEXTOID && (b) == BPCHAROID) \ || ((a) == TEXTOID && (b) == VARCHAROID) \ + || ((a) == TEXTOID && (b) == BYTEAOID) \ + || ((a) == BYTEAOID && (b) == BPCHAROID) \ + || ((a) == BYTEAOID && (b) == VARCHAROID) \ + || ((a) == BYTEAOID && (b) == TEXTOID) \ || ((a) == OIDOID && (b) == INT4OID) \ || ((a) == OIDOID && (b) == REGPROCOID) \ || ((a) == INT4OID && (b) == OIDOID) \