Commit 84dbd5a8 authored by Tom Lane's avatar Tom Lane

Disallow SETOF in the input of parseTypeString(). Formerly it was

silently ignored, allowing one to write bizarre things like
	DECLARE x setof int;
in plpgsql.  This has misled at least one novice into thinking that
plpgsql variables could be sets ...
parent c3d6c7d8
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
* *
* *
* IDENTIFICATION * IDENTIFICATION
* $PostgreSQL: pgsql/src/backend/parser/parse_type.c,v 1.71 2004/08/29 05:06:44 momjian Exp $ * $PostgreSQL: pgsql/src/backend/parser/parse_type.c,v 1.72 2004/12/15 20:15:17 tgl Exp $
* *
*------------------------------------------------------------------------- *-------------------------------------------------------------------------
*/ */
...@@ -453,6 +453,8 @@ parseTypeString(const char *str, Oid *type_id, int32 *typmod) ...@@ -453,6 +453,8 @@ parseTypeString(const char *str, Oid *type_id, int32 *typmod)
if (typename == NULL || if (typename == NULL ||
!IsA(typename, TypeName)) !IsA(typename, TypeName))
goto fail; goto fail;
if (typename->setof)
goto fail;
*type_id = typenameTypeId(typename); *type_id = typenameTypeId(typename);
*typmod = typename->typmod; *typmod = typename->typmod;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment