Well, since the new class is its own package, you'll have to separately bring the Carp methods into that new class, by just adding the use Carp;
in reply to seamlessly use an extended class's use'd libs
Though this may seem like a pain, it's actually a good idea, since one of the main points of subclassing in OO coding is so that the extender need not know how the base class is implemented.
If you really want to load all the packages that your base class has loaded, I suppose you could crawl the symbol tables yourself and load them all, but isn't it just easier to use the modules yourself? (Note: I've never done this, and it doesn't seem wise!)
Perhaps you're concerned that loading the modules (with use) again would cost speed -- belay that fear. use is just require with a more sophisticated redundancy check.