X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FMoose%2FMeta%2FRole%2FMethod.pm;h=a0f44c870947d1d5bdce36685f3e09bdb09e7808;hb=0855da6beee716a87028f0531c220b1e4b21c943;hp=3353bf604cedcf0973f67c65997e3e789719ce10;hpb=40290d18183d44ddbb0f4fdd2f75ffb7955bbfcf;p=gitmo%2FMoose.git diff --git a/lib/Moose/Meta/Role/Method.pm b/lib/Moose/Meta/Role/Method.pm index 3353bf6..a0f44c8 100644 --- a/lib/Moose/Meta/Role/Method.pm +++ b/lib/Moose/Meta/Role/Method.pm @@ -4,12 +4,23 @@ package Moose::Meta::Role::Method; use strict; use warnings; -our $VERSION = '1.04'; +our $VERSION = '1.21'; $VERSION = eval $VERSION; our $AUTHORITY = 'cpan:STEVAN'; use base 'Moose::Meta::Method'; +sub _make_compatible_with { + my $self = shift; + my ($other) = @_; + + # XXX: this is pretty gross. the issue here is blah blah blah + # see the comments in CMOP::Method::Meta and CMOP::Method::Wrapped + return $self unless $other->_is_compatible_with($self->_real_ref_name); + + return $self->SUPER::_make_compatible_with(@_); +} + 1; __END__