Add optional parameter to PG_TRY() macros
authorDavid Rowley <drowley@postgresql.org>
Wed, 5 Oct 2022 21:08:31 +0000 (10:08 +1300)
committerDavid Rowley <drowley@postgresql.org>
Wed, 5 Oct 2022 21:08:31 +0000 (10:08 +1300)
commit112f0225dbfe8af217294bfa0bd227f3302a1658
tree4087e349808244d0520c8be35e8dfc2777e51fe8
parent23f3989d929e9301a29ee3a25ecf8040d8de20c2
Add optional parameter to PG_TRY() macros

This optional parameter can be specified in cases where there are nested
PG_TRY() statements within a function in order to stop the compiler from
issuing warnings about shadowed local variables when compiling with
-Wshadow.  The optional parameter is used as a suffix on the variable
names declared within the PG_TRY(), PG_CATCH(), PG_FINALLY() and
PG_END_TRY() macros.  The parameter, if specified, must be the same in
each component macro of the given PG_TRY() block.

This also adjusts the single case where we have nested PG_TRY() statements
to add a parameter to the inner-most PG_TRY().

This reduces the number of compiler warnings when compiling with
-Wshadow=compatible-local from 5 down to 1.

Author: David Rowley
Discussion: https://postgr.es/m/CAApHDvqWGMdB_pATeUqE=JCtNqNxObPOJ00jFEa2_sZ20j_Wvg@mail.gmail.com
src/backend/tcop/utility.c
src/include/utils/elog.h