Add a parse location field to struct FunctionParameter.
This allows an error cursor to be supplied for a bunch of
bad-function-definition errors that previously lacked one,
or that cheated a bit by pointing at the contained type name
when the error isn't really about that.
Bump catversion from an abundance of caution --- I don't think
this node type can actually appear in stored views/rules, but
better safe than sorry.
Jian He and Tom Lane (extracted from a larger patch by Jian,
with some additional work by me)
Discussion: https://postgr.es/m/CACJufxEmONE3P2En=jopZy1m=cCCUs65M4+1o52MW5og9oaUPA@mail.gmail.com
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/89e51abcb2905d6beaa09a7d3603d6882ac27033
Modified Files
--------------
src/backend/commands/functioncmds.c | 47 ++++++++++++++--------
src/backend/nodes/nodeFuncs.c | 3 +-
src/backend/parser/gram.y | 17 +++++---
src/include/catalog/catversion.h | 2 +-
src/include/nodes/parsenodes.h | 1 +
.../test_ddl_deparse/expected/create_type.out | 2 +
.../modules/test_ddl_deparse/expected/opfamily.out | 4 ++
.../modules/test_pg_dump/expected/test_pg_dump.out | 2 +
src/test/regress/expected/create_cast.out | 2 +
src/test/regress/expected/create_procedure.out | 4 ++
src/test/regress/expected/create_type.out | 14 +++++++
src/test/regress/expected/equivclass.out | 4 ++
src/test/regress/expected/expressions.out | 4 ++
.../regress/expected/float4-misrounded-input.out | 2 +
src/test/regress/expected/float4.out | 2 +
src/test/regress/expected/float8.out | 2 +
src/test/regress/expected/polymorphism.out | 12 ++++++
17 files changed, 100 insertions(+), 24 deletions(-)