- if ($hints and $hints->{subs__auto}) {
- my $mod = $func . '.pm';
- if (not exists $INC{$mod}) {
- my $fqn = $data->{pkg} . '::' . $func;
- my $cb = do { no strict 'refs'; *$fqn{CODE} };
- if ($cb) {
- if (_REFCNT_PLACEHOLDERS and defined(my $data = getdata(&$cb, $tag))) {
- ++$$data;
- }
- return;
+ if ($hints and $hints->{+(__PACKAGE__)}) {
+ my $pm = $func . '.pm';
+ return if exists $INC{$pm};
+
+ my $fqn = $data->{pkg} . '::' . $func;
+ my $cb = do { no strict 'refs'; *$fqn{CODE} };
+ if ($cb) {
+ if (_REFCNT_PLACEHOLDERS and defined(my $data = getdata(&$cb, $tag))) {
+ ++$$data;