in reply to Re^2: using strict from another module
in thread using strict from another module

The problem is that now, Exporter->import is not being called, because mod::personal->import is hidding it.

Calling Exporter->import from mod::personal->import would not work either because it expects to be called directly from the package where the subs have to be imported. Fortunately Exporter has another method just for those cases: export_to_level:

package mod::personal; require strict; require Exporter; @ISA = qw(Exporter); @EXPORT_OK = qw (phash); use Foo qw(phash); sub import { strict->import; $_[0]->export_to_level(1, @_); }