Class::Inspector might also help. For example:
#!/usr/bin/perl -l
package PkgA;
sub fooA {}
sub barA {}
package PkgB;
use base "PkgA";
sub fooB {}
package PkgC;
use base "PkgB";
sub barC {}
package main;
use Class::Inspector;
print for @{ Class::Inspector->methods('PkgC', 'full') };
__END__
PkgA::barA
PkgC::barC
PkgA::fooA
PkgB::fooB
Or, if you want to call it from within the child package (PkgC):
...
package PkgC;
...
use Class::Inspector;
print for @{ Class::Inspector->methods(__PACKAGE__, 'full') };