X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FMoose%2FMeta%2FRole%2FMethod.pm;fp=lib%2FMoose%2FMeta%2FRole%2FMethod.pm;h=c876d53b4d502fe8e83cb2b88531146e0c0f48b2;hb=630f7baadb64ebdf069c7ceb6fc86331618f60fa;hp=f81341453c053c71dc09dafb5a11351647181e54;hpb=e326dde0a81dfe9478c065a6b38c449f324d1224;p=gitmo%2FMoose.git diff --git a/lib/Moose/Meta/Role/Method.pm b/lib/Moose/Meta/Role/Method.pm index f813414..c876d53 100644 --- a/lib/Moose/Meta/Role/Method.pm +++ b/lib/Moose/Meta/Role/Method.pm @@ -10,6 +10,17 @@ 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__