Thread: pgsql: Improve perl style in ecpg's parser-construction scripts.

pgsql: Improve perl style in ecpg's parser-construction scripts.

From
Tom Lane
Date:
Improve perl style in ecpg's parser-construction scripts.

parse.pl and check_rules.pl used "no warnings 'uninitialized'",
which doesn't seem like it measures up to current project standards.
Removing that shows that it was hiding various places that accessed
off the end of an array, which are easily protected by minor logic
adjustments.  There's no change in the script results.

While here, improve the Makefile rule that invokes these scripts.
It neglected to depend on check_rules.pl, so that editing that file
didn't result in re-running the check; and it ran check_rules.pl
after building preproc.y, so that if check_rules.pl did fail the
next "make" attempt would just bypass it.  check_rules.pl failures
are sufficiently un-heard-of that I don't feel a need to back-patch
this.

Discussion: https://postgr.es/m/838180.1658181982@sss.pgh.pa.us

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/0778eb79b1e2957743bbd577fc3d862a3dc007cf

Modified Files
--------------
src/interfaces/ecpg/preproc/Makefile       |  4 ++--
src/interfaces/ecpg/preproc/check_rules.pl |  4 ++--
src/interfaces/ecpg/preproc/parse.pl       | 28 +++++++++++++++++++++-------
3 files changed, 25 insertions(+), 11 deletions(-)