On Thu, Nov 30, 2023 at 03:08:11PM +0000, Colin Ian King wrote: > The variable i is declared at the start of function btrfs_qgroup_inherit > however there are two for-loops that redeclare the variable using a C99 > declaration, causes name shadowing. I believe there is no need for this > local scoping of i in the loop, so replace the declaration in the loops > with assignments. > > Cleans up clang scan build warnings: > > fs/btrfs/qgroup.c:3194:12: warning: declaration shadows a local variable [-Wshadow] > 3194 | for (int i = 0; i < inherit->num_qgroups; i++) { > | ^ > fs/btrfs/qgroup.c:3089:6: note: previous declaration is here > 3089 | int i; > | ^ > fs/btrfs/qgroup.c:3321:12: warning: declaration shadows a local variable [-Wshadow] > 3321 | for (int i = 0; i < inherit->num_qgroups; i++) > | ^ > fs/btrfs/qgroup.c:3089:6: note: previous declaration is here > 3089 | int i; > | ^ > > Signed-off-by: Colin Ian King <colin.i.king@xxxxxxxxx> > --- > fs/btrfs/qgroup.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/fs/btrfs/qgroup.c b/fs/btrfs/qgroup.c > index ce446d9d7f23..b1f93dbf468c 100644 > --- a/fs/btrfs/qgroup.c > +++ b/fs/btrfs/qgroup.c > @@ -3191,7 +3191,7 @@ int btrfs_qgroup_inherit(struct btrfs_trans_handle *trans, u64 srcid, > ret = -ENOMEM; > goto out; > } > - for (int i = 0; i < inherit->num_qgroups; i++) { > + for (i = 0; i < inherit->num_qgroups; i++) { We want to use the for(...) local definitions, so this should change the function scope 'i'.