# New Ticket Created by Zoffix Znet # Please include the string: [perl #129800] # in the subject line of all future correspondence about this issue. # <URL: https://rt.perl.org/Ticket/Display.html?id=129800 >
# I have the fix; filing for records The error message displayed claims I called the method with two positonal arguments, rather than one positional and one named: <ZoffixW> m: class Z { multi method meow {} }.meow: 42, :foo(42) <camelia> rakudo-moar 6c0732: OUTPUT«Cannot resolve caller meow(Z: Int, Int); none of these signatures match: (Z $: *%_) in block <unit> at <tmp> line 1» <ZoffixW> m: class Z { multi method meow {} }.meow: 42, :foo(Str) <camelia> rakudo-moar 6c0732: OUTPUT«Cannot resolve caller meow(Z: Int, Str); none of these signatures match: (Z $: *%_) in block <unit> at <tmp> line 1» Works fine for Bools <ZoffixW> m: class Z { multi method meow {} }.meow: 42, :foo <camelia> rakudo-moar 6c0732: OUTPUT«Cannot resolve caller meow(Z: Int, :foo); none of these signatures match: (Z $: *%_) in block <unit> at <tmp> line 1» The issue is the string that's supposed to be showing proper named[^1] has an interpolation bug where it thinks we're trying to call the .key, which is Str and that fails. BUT, the whole thing is wrapped in a `try` so the failure is silent and we get into the fallback that only gives us the type name. BUT, that fallback also has a bugglet in that the `:` to indicate it's a named param is missing. [1] https://github.com/rakudo/rakudo/blob/1e6c465ce27b457b66c1e92d11c23189cb2c451a/src/core/Exception.pm#L2305