{ package Foo; sub ARGV { print "1\n" } sub Foo::ARGV { print "2\n" } } { package Bar; ARGV(); # 1 Foo::ARGV(); # 2 Foo->ARGV(); # 2 }