package A; sub foo {}; package B; sub bar {}; package C; use vars qw(@ISA); @ISA = qw(B); sub foo {}; sub isa { return $_[1] eq 'A' or $_[0]->SUPER::isa(@_); }