# New Ticket Created by "Brian S. Julin"
# Please include the string: [perl #127024]
# in the subject line of all future correspondence about this issue.
# <URL: https://rt.perl.org/Ticket/Display.html?id=127024 >
Regression:
(09:41:06 PM) skids: m: role A { multi method a ($ where { $_.say; $_ ~~ /a/ }
) { "A".say }; }; role B { multi method a ($ where { $_.say; $_ ~~ /b/ } ) {
"B".say } }; class C does A does B { }; C.new.a("a");
(09:41:07 PM) camelia: rakudo-moar e360bd: OUTPUT«===SORRY!=== Error while
compiling /tmp/dMwEKoUikSMulti method 'a' with signature :(C $: $ where { ...
}, *%_) must be resolved by class C because it exists in multiple roles (B,
A)at /tmp/dMwEKoUikS:1»
(09:41:36 PM) skids: star: role A { multi method a ($ where { $_.say; $_ ~~ /a/
} ) { "A".say }; }; role B { multi method a ($ where { $_.say; $_ ~~ /b/ } ) {
"B".say } }; class C does A does B { }; C.new.a("a");
(09:41:37 PM) camelia: star-m 2015.09: OUTPUT«aaaA»
Where clauses should prevent multi-methods from conflicting.