From aa282d44464df0fbfa0672dc353d36734ec1092e Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Tue, 29 Apr 2003 22:13:11 +0000 Subject: Infrastructure for deducing Param types from context, in the same way that the types of untyped string-literal constants are deduced (ie, when coerce_type is applied to 'em, that's what the type must be). Remove the ancient hack of storing the input Param-types array as a global variable, and put the info into ParseState instead. This touches a lot of files because of adjustment of routine parameter lists, but it's really not a large patch. Note: PREPARE statement still insists on exact specification of parameter types, but that could easily be relaxed now, if we wanted to do so. --- src/include/parser/parse_func.h | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'src/include/parser/parse_func.h') diff --git a/src/include/parser/parse_func.h b/src/include/parser/parse_func.h index 3bd369e3c70..2b1a1fad4b9 100644 --- a/src/include/parser/parse_func.h +++ b/src/include/parser/parse_func.h @@ -7,7 +7,7 @@ * Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $Id: parse_func.h,v 1.44 2003/04/08 23:20:04 tgl Exp $ + * $Id: parse_func.h,v 1.45 2003/04/29 22:13:11 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -16,6 +16,7 @@ #include "parser/parse_node.h" + /* * This structure is used to explore the inheritance hierarchy above * nodes in the type tree in order to disambiguate among polymorphic @@ -49,7 +50,8 @@ extern FuncDetailCode func_get_detail(List *funcname, List *fargs, extern bool typeInheritsFrom(Oid subclassTypeId, Oid superclassTypeId); -extern void make_fn_arguments(List *fargs, +extern void make_fn_arguments(ParseState *pstate, + List *fargs, Oid *actual_arg_types, Oid *declared_arg_types); -- cgit v1.2.3