Add optional parameter to PG_TRY() macros

David Rowley <drowley@postgresql.org>

Commit: 112f0225dbfe8af217294bfa0bd227f3302a1658
Author: David Rowley <drowley@postgresql.org>
Date: 2022-10-05T21:08:31Z
Releases: 16.0
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

Files

PathChange+/−
src/backend/tcop/utility.c modified +3 −3
src/include/utils/elog.h modified +26 −18

Discussion