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 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