Support named and default arguments in CALL
We need to call expand_function_arguments() to expand named and default
arguments.
In PL/pgSQL, we also need to deal with named and default INOUT arguments
when receiving the output values into variables.
Author: Pavel Stehule <pavel.stehule@gmail.com>
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/a8677e3ff6bb8ef78a9ba676faa647bba237b1c4
Modified Files
--------------
src/backend/commands/functioncmds.c | 35 ++++++-----
src/backend/optimizer/util/clauses.c | 4 +-
src/include/optimizer/clauses.h | 5 +-
src/pl/plpgsql/src/expected/plpgsql_call.out | 87 ++++++++++++++++++++++++++
src/pl/plpgsql/src/pl_exec.c | 37 ++++++++---
src/pl/plpgsql/src/sql/plpgsql_call.sql | 74 ++++++++++++++++++++++
src/test/regress/expected/create_procedure.out | 25 ++++++++
src/test/regress/sql/create_procedure.sql | 19 ++++++
8 files changed, 258 insertions(+), 28 deletions(-)