$ perl -le " use warnings; sub foo { warn 1 } foo(); local *foo; eval q{sub foo { warn 2 }}; foo(); " 1 at -e line 1. 2 at (eval 5) line 1.