# No Namespace Confusion! $\="\n"; sub inner { print "global_inner" } inner(); sub whatever { inner() } sub outer { { package outer; local *inner=sub {print "inner_of_outer"}; inner(); } whatever(); } outer(); __END__ global_inner inner_of_outer global_inner