diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/Attribute/Handlers.pm | 1 | ||||
-rw-r--r-- | lib/Attribute/Handlers/t/constants.t | 13 |
2 files changed, 14 insertions, 0 deletions
diff --git a/lib/Attribute/Handlers.pm b/lib/Attribute/Handlers.pm index 35484be426..6bd121b64d 100644 --- a/lib/Attribute/Handlers.pm +++ b/lib/Attribute/Handlers.pm @@ -16,6 +16,7 @@ sub findsym { no strict 'refs'; foreach my $sym ( values %{$pkg."::"} ) { use strict; + next unless ref ( \$sym ) eq 'GLOB'; return $symcache{$pkg,$ref} = \$sym if *{$sym}{$type} && *{$sym}{$type} == $ref; } diff --git a/lib/Attribute/Handlers/t/constants.t b/lib/Attribute/Handlers/t/constants.t new file mode 100644 index 0000000000..746a87e0ec --- /dev/null +++ b/lib/Attribute/Handlers/t/constants.t @@ -0,0 +1,13 @@ +BEGIN { + if ($ENV{PERL_CORE}) { + chdir 't' if -d 't'; + @INC = '../lib'; + } +} +use strict; +use Test::More tests => 1; +use Attribute::Handlers; +# This had been failing since the introduction of proxy constant subroutines +use constant SETUP => undef; +sub Test : ATTR(CODE) { }; +ok(1, "If we got here, CHECK didn't fail"); |