*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/parser/gram.y,v 2.524 2006/01/22 20:03:16 tgl Exp $
+ * $PostgreSQL: pgsql/src/backend/parser/gram.y,v 2.525 2006/01/31 22:40:03 tgl Exp $
*
* HISTORY
* AUTHOR DATE MAJOR EVENT
;
/*
- * We would like to make the second production here be ColId attrs etc,
+ * We would like to make the %TYPE productions here be ColId attrs etc,
* but that causes reduce/reduce conflicts. type_name is next best choice.
*/
func_type: Typename { $$ = $1; }
$$->pct_type = true;
$$->typmod = -1;
}
+ | SETOF type_name attrs '%' TYPE_P
+ {
+ $$ = makeNode(TypeName);
+ $$->names = lcons(makeString($2), $3);
+ $$->pct_type = true;
+ $$->typmod = -1;
+ $$->setof = TRUE;
+ }
;