in reply to Re^2: Multiple Package in one file with equal named variables
in thread Multiple Package in one file with equal named variables

The usual way of dealing with warnings for things that you intend to do is to turn off warnings around the offending statement. Often that's done for a lexical scope, but since you don't want to introduce multiple lexical scopes, you'd do:
no warnings 'misc'; my @values = (...); use warnings 'misc';
At this point, you're probably at the point that wrapping each package in its own lexical scope looks like the Right Thing To Do. It is.

For reference, perldoc perllexwarn shows the various categories of warnings you can turn on and off, and perldoc perldiag lists some of the warning messages and which category they fall into. (I found it odd that the "masks earlier declaration" didn't fall under the "redefine" category, and instead was thrown into "misc".)


Caution: Contents may have been coded under pressure.