diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2002-08-05 02:30:50 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2002-08-05 02:30:50 +0000 |
commit | 07f9682de43ce53fcd6d86744f610cacfabc60bb (patch) | |
tree | 2415db60be54912154c9c8f8834fb94f33fa5bca /src/backend/catalog/pg_proc.c | |
parent | ac1a3dcf24e182a1cc9a136246b7f18a8a64bbd5 (diff) | |
download | postgresql-07f9682de43ce53fcd6d86744f610cacfabc60bb.tar.gz postgresql-07f9682de43ce53fcd6d86744f610cacfabc60bb.zip |
Preliminary code review for anonymous-composite-types patch: fix breakage
of functions returning domain types, update documentation for typtype,
move get_typtype to lsyscache.c (actually, resurrect the old version),
add defense against creating pseudo-typed table columns, fix some
bogus list-parsing in grammar. Issues remain with respect to alias
handling and type checking; Joe is on those.
Diffstat (limited to 'src/backend/catalog/pg_proc.c')
-rw-r--r-- | src/backend/catalog/pg_proc.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/src/backend/catalog/pg_proc.c b/src/backend/catalog/pg_proc.c index c8f769db306..5cc863249b4 100644 --- a/src/backend/catalog/pg_proc.c +++ b/src/backend/catalog/pg_proc.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/catalog/pg_proc.c,v 1.86 2002/08/05 00:21:27 tgl Exp $ + * $Header: /cvsroot/pgsql/src/backend/catalog/pg_proc.c,v 1.87 2002/08/05 02:30:50 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -25,7 +25,6 @@ #include "miscadmin.h" #include "parser/parse_coerce.h" #include "parser/parse_expr.h" -#include "parser/parse_relation.h" #include "parser/parse_type.h" #include "tcop/tcopprot.h" #include "utils/builtins.h" @@ -370,7 +369,7 @@ checkretval(Oid rettype, char fn_typtype, List *queryTreeList) typerelid = typeidTypeRelid(rettype); - if (fn_typtype == 'b') + if (fn_typtype == 'b' || fn_typtype == 'd') { /* Shouldn't have a typerelid */ Assert(typerelid == InvalidOid); @@ -592,7 +591,7 @@ fmgr_sql_validator(PG_FUNCTION_ARGS) prosrc = DatumGetCString(DirectFunctionCall1(textout, tmp)); /* check typtype to see if we have a predetermined return type */ - functyptype = typeid_get_typtype(proc->prorettype); + functyptype = get_typtype(proc->prorettype); querytree_list = pg_parse_and_rewrite(prosrc, proc->proargtypes, proc->pronargs); checkretval(proc->prorettype, functyptype, querytree_list); |