$ perl -wE'{ my $s=1; sub f { eval q{$s} } } say f || 0;'
Variable "$s" is not available at (eval 1) line 2.
0
$ perl -wE'{ my $s=1; sub f { $s if 0; eval q{$s} } } say f || 0;'
1
####
$ perl -wE'{ my $s=1; sub f { eval q{$s} } } say f || 0;'
Variable "$s" is not available at (eval 1) line 2.
0
$ perl -wE'{ our $s=1; sub f { eval q{$s} } } say f || 0;'
1
####
perl -c Foo.pm
####
perl -e'use Foo;'