$ perl -E 'my $arg1 = $ARGV[1]; my $arg1 = $ARGV[2]; my $arg1 = $ARGV[3]; say $arg2; say $arg3' "my" variable $arg1 masks earlier declaration in same scope at -e line 1. "my" variable $arg1 masks earlier declaration in same scope at -e line 1. Global symbol "$arg2" requires explicit package name (did you forget to declare "my $arg2"?) at -e line 1. Global symbol "$arg3" requires explicit package name (did you forget to declare "my $arg3"?) at -e line 1. Execution of -e aborted due to compilation errors.