mirror of
				https://github.com/postgres/postgres.git
				synced 2025-11-03 09:13:20 +03:00 
			
		
		
		
	Changed ecpg parser to allow RETURNING clauses without attached C variables.
This commit is contained in:
		@@ -1877,9 +1877,8 @@ Iresult:        Iconst				{ $$ = $1; }
 | 
			
		||||
                ;
 | 
			
		||||
 | 
			
		||||
execute_rest: /* EMPTY */	{ $$ = EMPTY; }
 | 
			
		||||
	| ecpg_using ecpg_into  { $$ = EMPTY; }
 | 
			
		||||
	| ecpg_using opt_ecpg_into  { $$ = EMPTY; }
 | 
			
		||||
	| ecpg_into ecpg_using  { $$ = EMPTY; }
 | 
			
		||||
	| ecpg_using			{ $$ = EMPTY; }
 | 
			
		||||
	| ecpg_into				{ $$ = EMPTY; }
 | 
			
		||||
	;
 | 
			
		||||
 | 
			
		||||
@@ -1887,6 +1886,10 @@ ecpg_into: INTO into_list	{ $$ = EMPTY; }
 | 
			
		||||
	| into_descriptor		{ $$ = $1; }
 | 
			
		||||
	;
 | 
			
		||||
 | 
			
		||||
opt_ecpg_into:	/* EMPTY */	{ $$ = EMPTY; }
 | 
			
		||||
	| ecpg_into		{ $$ = $1; }
 | 
			
		||||
	;
 | 
			
		||||
 | 
			
		||||
ecpg_fetch_into: ecpg_into	{ $$ = $1; }
 | 
			
		||||
	| using_descriptor
 | 
			
		||||
	{
 | 
			
		||||
 
 | 
			
		||||
@@ -78,6 +78,7 @@
 | 
			
		||||
%type <str> opt_bit_field
 | 
			
		||||
%type <str> opt_connection_name
 | 
			
		||||
%type <str> opt_database_name
 | 
			
		||||
%type <str> opt_ecpg_into
 | 
			
		||||
%type <str> opt_ecpg_fetch_into
 | 
			
		||||
%type <str> opt_ecpg_using
 | 
			
		||||
%type <str> opt_initializer
 | 
			
		||||
 
 | 
			
		||||
@@ -98,7 +98,7 @@ my %replace_line = (
 | 
			
		||||
	'VariableShowStmtSHOWSESSIONAUTHORIZATION' =>
 | 
			
		||||
	  'SHOW SESSION AUTHORIZATION ecpg_into',
 | 
			
		||||
	'returning_clauseRETURNINGtarget_list' =>
 | 
			
		||||
	  'RETURNING target_list ecpg_into',
 | 
			
		||||
	  'RETURNING target_list opt_ecpg_into',
 | 
			
		||||
	'ExecuteStmtEXECUTEnameexecute_param_clause' =>
 | 
			
		||||
	  'EXECUTE prepared_name execute_param_clause execute_rest',
 | 
			
		||||
'ExecuteStmtCREATEOptTempTABLEcreate_as_targetASEXECUTEnameexecute_param_clause'
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user