FAQ

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

Search Discussions

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
groupperl6-compiler @
categoriesperl
postedJul 16, '10 at 2:45a
activeJul 16, '10 at 2:45a
posts1
users1
websiteperl6.org

1 user in discussion

jnthn@jnthn.net via RT: 1 post

People

Translate

site design / logo © 2021 Grokbase