Index: gram.y
===================================================================
RCS file: /usr/local/cvsroot/pgsql/src/backend/parser/gram.y,v
retrieving revision 2.99
retrieving revision 2.100
diff -c -r2.99 -r2.100
*** gram.y	1999/09/23 17:02:46	2.99
--- gram.y	1999/09/28 04:34:44	2.100
***************
*** 10,16 ****
   *
   *
   * IDENTIFICATION
!  *	  $Header: /usr/local/cvsroot/pgsql/src/backend/parser/gram.y,v 2.99 1999/09/23 17:02:46 momjian Exp $
   *
   * HISTORY
   *	  AUTHOR			DATE			MAJOR EVENT
--- 10,16 ----
   *
   *
   * IDENTIFICATION
!  *	  $Header: /usr/local/cvsroot/pgsql/src/backend/parser/gram.y,v 2.100 1999/09/28 04:34:44 momjian Exp $
   *
   * HISTORY
   *	  AUTHOR			DATE			MAJOR EVENT
***************
*** 163,169 ****
  %type <list>	stmtblock, stmtmulti,
  		result, relation_name_list, OptTableElementList,
  		OptInherit, definition,
! 		opt_with, func_args, func_args_list,
  		oper_argtypes, RuleActionList, RuleActionBlock, RuleActionMulti,
  		opt_column_list, columnList, opt_va_list, va_list,
  		sort_clause, sortby_list, index_params, index_list, name_list,
--- 163,169 ----
  %type <list>	stmtblock, stmtmulti,
  		result, relation_name_list, OptTableElementList,
  		OptInherit, definition,
! 		opt_with, func_args, func_args_list, func_as,
  		oper_argtypes, RuleActionList, RuleActionBlock, RuleActionMulti,
  		opt_column_list, columnList, opt_va_list, va_list,
  		sort_clause, sortby_list, index_params, index_list, name_list,
***************
*** 1923,1929 ****
   *****************************************************************************/
  
  ProcedureStmt:	CREATE FUNCTION func_name func_args
! 			 RETURNS func_return opt_with AS Sconst LANGUAGE Sconst
  				{
  					ProcedureStmt *n = makeNode(ProcedureStmt);
  					n->funcname = $3;
--- 1923,1929 ----
   *****************************************************************************/
  
  ProcedureStmt:	CREATE FUNCTION func_name func_args
! 			 RETURNS func_return opt_with AS func_as LANGUAGE Sconst
  				{
  					ProcedureStmt *n = makeNode(ProcedureStmt);
  					n->funcname = $3;
***************
*** 1947,1952 ****
--- 1947,1958 ----
  				{	$$ = lcons(makeString($1),NIL); }
  		| func_args_list ',' TypeId
  				{	$$ = lappend($1,makeString($3)); }
+ 		;
+ 
+ func_as: Sconst	
+ 				{   $$ = lcons(makeString($1),NIL); }
+ 		| Sconst ',' Sconst
+ 				{ 	$$ = lappend(lcons(makeString($1),NIL), makeString($3)); }
  		;
  
  func_return:  set_opt TypeId
