# New Ticket Created by "Carl Mäsak" # Please include the string: [perl #68528] # in the subject line of all future correspondence about this issue. # <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=68528 >
<jnthn> rakudo: multi foo(:$a!, *%_) {}; multi foo(:$b, *%_) {}; foo(:a, :b) <p6eval> rakudo 0d4fe0: OUTPUT«Ambiguous dispatch to multi 'foo'. Ambiguous candidates had signatures::(Any :$a, Object *%_):(Any :$b?, Object *%_)in Main (/tmp/1JICUeh8sD:2)» [...] <jnthn> So for tiebreaker <jnthn> A the candidates are simply called in the order they were declared, <jnthn> and the first one that successfully binds (and completes without <jnthn> calling nextsame or nextwith) is considered the winner, and all the <jnthn> other tied candidates are ignored. [...] <jnthn> If I understand S12 correctly, then by the spec the tie you got earlier is a bug. <jnthn> And the first candidate that appeared textually in your program shoulda won.