From 89c0a87fda06aade58831976c9dbc97134032d18 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Fri, 11 Jan 2008 18:39:41 +0000 Subject: The original implementation of polymorphic aggregates didn't really get the checking of argument compatibility right; although the problem is only exposed with multiple-input aggregates in which some arguments are polymorphic and some are not. Per bug #3852 from Sokolov Yura. --- src/backend/parser/parse_oper.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'src/backend/parser/parse_oper.c') diff --git a/src/backend/parser/parse_oper.c b/src/backend/parser/parse_oper.c index 1bd58cdbceb..6b23fbb9e9a 100644 --- a/src/backend/parser/parse_oper.c +++ b/src/backend/parser/parse_oper.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/parser/parse_oper.c,v 1.100 2008/01/01 19:45:51 momjian Exp $ + * $PostgreSQL: pgsql/src/backend/parser/parse_oper.c,v 1.101 2008/01/11 18:39:41 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -1006,7 +1006,8 @@ make_scalar_array_op(ParseState *pstate, List *opname, rettype = enforce_generic_type_consistency(actual_arg_types, declared_arg_types, 2, - opform->oprresult); + opform->oprresult, + false); /* * Check that operator result is boolean @@ -1116,7 +1117,8 @@ make_op_expr(ParseState *pstate, Operator op, rettype = enforce_generic_type_consistency(actual_arg_types, declared_arg_types, nargs, - opform->oprresult); + opform->oprresult, + false); /* perform the necessary typecasting of arguments */ make_fn_arguments(pstate, args, actual_arg_types, declared_arg_types); -- cgit v1.2.3