a(); b(); print "$var\n"; sub a { local $var = "a\n"; c(); } sub b { local $var = "b\n"; c(); } sub c { # i'm pleasing you to print a or b print "var: $var"; }