On Sat Jun 19 03:15:52 2010, moritz wrote: > 12:11 <@moritz_> rakudo: class A { multi method b($x where { 0 } ) { } > }; A.new.b(4) > 12:11 <+p6eval> rakudo 92e914: OUTPUT«No candidates found to invoke in > main program body at line 11:/tmp/jdOpy6exrT» > 12:13 * moritz_ submits rakudobug about LTA error message > > It should mention at least: > 1) the name of the method > 2) the type of the invocant > > bonus points (and a beer at our next meeting) for listing candidates > like failed multi sub dispatch does it.
So, taking a more interesting example: class A { multi method b($x) { 1 } multi method b($x, $y) { 2 } } say A.new.b(); Running this now gives the far, far more informative: No candidates found to invoke for method 'b' on object of type 'A'; available candidates have signatures: :(Mu : Any $x;; *%_) :(Mu : Any $x, Any $y;; *%_) in main program body at line 5:test.p6 Good enough for beer? ;-) Given to moritz++ in case this is something that is testable or should be tested. Jonathan