NAME Perl::Critic::Policy::Variables::NameReuse - Don't reuse names for different types of variables SYNOPSIS perlcritic --single-policy=Variables::NameReuse script.pl perlcritic --single-policy=Variables::NameReuse lib/ # .perlcriticrc severity = 1 only = 1 [Variables::NameReuse] DESCRIPTION This policy checks for the existence of multiple variables with the same name in a file. This can be confusing especially when accessing elements of variables or using list or key-value slices. For example, the code could access both $foo and $foo[0] but these actually refer to the unrelated variables $foo and @foo. my $foo = @foo; # not ok my @bar = @bar{'a','b'}; # not ok my $count = @foo; # ok my @values = @bar{'a','b'}; # ok AFFILIATION This policy has no affiliation. CONFIGURATION This policy is not configurable except for the standard options. BUGS Report any issues on the public bugtracker. AUTHOR Dan Book <dbook@cpan.org> COPYRIGHT AND LICENSE This software is Copyright (c) 2018 by Dan Book. This is free software, licensed under: The Artistic License 2.0 (GPL Compatible) SEE ALSO Perl::Critic::Policy::Variables::ProhibitReusedNames - instead prohibits redeclaring the same variable name across different scopes