diff options
Diffstat (limited to 'lib/Package/Stash')
-rw-r--r-- | lib/Package/Stash/PP.pm | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/Package/Stash/PP.pm b/lib/Package/Stash/PP.pm index 2508052..71ee4e5 100644 --- a/lib/Package/Stash/PP.pm +++ b/lib/Package/Stash/PP.pm @@ -250,7 +250,10 @@ sub has_symbol { return defined ${ *{$entry_ref}{$type} }; } else { - return B::svref_2object($entry_ref)->SV->isa('B::SV'); + my $sv = B::svref_2object($entry_ref)->SV; + return $sv->isa('B::SV') + || ($sv->isa('B::SPECIAL') + && $B::specialsv_name[$$sv] ne 'Nullsv'); } } else { |