use v5.14; package Local::Role { use Moose::Role; around [qw/ a b /] => sub { say "constant access" }; } package Local::Class { use Moose; with 'Local::Role'; use constant { a => 1, b => 2 }; } # Should print "constant access" twice Local::Class->a; Local::Class->b;