# New Ticket Created by "Carl Mäsak" # Please include the string: [perl #114724] # in the subject line of all future correspondence about this issue. # <URL: https://rt.perl.org:443/rt3/Ticket/Display.html?id=114724 >
<skids> r: sub f (::T $g) { for ($g) -> T $h { } }; f("blah"); <p6eval> rakudo 962b9b: OUTPUT«Nominal type check failed for parameter '$h'; expected T but got Str instead [...] <masak> r: sub f (::T $g) { say T.^name }; f("blah") <p6eval> rakudo 962b9b: OUTPUT«Str» <masak> weyrd. <skids> I do manage to run into some of the weirder ones, yes. :-) <masak> r: sub f (::T $g) { say $g ~~ Str; say $g ~~ T; say Str ~~ T }; f("blah") <p6eval> rakudo 962b9b: OUTPUT«TrueTrueTrue» <skids> it only happens in the for signature, every other place it works. <masak> r: sub f (::T $g) { for $g -> $h where { say Str ~~ T } {} }; f("blah") <p6eval> rakudo 962b9b: OUTPUT«True» <masak> curious. * masak submits rakudobug