Re: shadow variables - pg15 edition
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Michael Paquier <michael@paquier.xyz>
Cc: Peter Smith <smithpb2250@gmail.com>, Justin Pryzby <pryzby@telsasoft.com>,
PostgreSQL-development <pgsql-hackers@postgresql.org>,
Tomas Vondra <tomas.vondra@postgresql.org>,
David Rowley <dgrowleyml@gmail.com>
Date: 2022-08-18T03:42:27Z
Lists: pgsql-hackers
Michael Paquier <michael@paquier.xyz> writes: > A lot of the changes proposed here update the code so as the same > variable gets used across more code paths by removing declarations, > but we have two variables defined because both are aimed to be used in > a different context (see AttachPartitionEnsureIndexes() in tablecmds.c > for example). > Wouldn't it be a saner approach in a lot of cases to rename the > shadowed variables (aka the ones getting removed in your patches) and > keep them local to the code paths where we use them? Yeah. I do not think a patch of this sort has any business changing the scopes of variables. That moves it out of "cosmetic cleanup" and into "hm, I wonder if this introduces any bugs". Most hackers are going to decide that they have better ways to spend their time than doing that level of analysis for a very noncritical patch. regards, tom lane
Commits
-
Fix shadow variable in postgres.c
- 4574eb9d38c6 16.0 landed
-
Add -Wshadow=compatible-local to the standard compilation flags
- 0fe954c28584 16.0 landed
-
Fix final warnings produced by -Wshadow=compatible-local
- cd4e8caaa0eb 16.0 landed
-
Fix final compiler warning produced by -Wshadow=compatible-local
- d8df67bb1ad9 16.0 landed
-
Add optional parameter to PG_TRY() macros
- 112f0225dbfe 16.0 landed
-
Small refactor to get rid of -Wshadow=compatible-local warning
- d389487525bc 16.0 landed
-
More -Wshadow=compatible-local warning fixes
- 3e0fff2e6888 16.0 landed
-
Further -Wshadow=compatible-local warning fixes
- f959bf9a5b9c 16.0 landed
-
Further reduce warnings with -Wshadow=compatible-local
- 421892a192b8 16.0 landed
-
Reduce warnings with -Wshadow=compatible-local builds
- 92fce4e1eda9 16.0 landed
-
Remove shadowed local variables that are new in v15
- 24f457aa2b70 15.0 landed
- f01592f91577 16.0 landed