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