# New Ticket Created by Elizabeth Mattijsen # Please include the string: [perl #130706] # in the subject line of all future correspondence about this issue. # <URL: https://rt.perl.org/Ticket/Display.html?id=130706 >
<lizmat> m: sub a(--> 42) { { return } }; dd a # expected 42 <+camelia> rakudo-moar f2894d: OUTPUT«Nil» <lizmat> jnthn: am I wrong in expecting that? ^^^ <jnthn> What were you expecting? <jnthn> Looks right to me. <jnthn> m: sub a(--> 42) { return }; dd a <+camelia> rakudo-moar f2894d: OUTPUT«42» <jnthn> How does that one work? <jnthn> I thought the --> was just for the fall-off-the-end though... <lizmat> jnthn: apparently not ? <lizmat> m: sub a(--> 42) { return 666 } <+camelia> rakudo-moar f2894d: OUTPUT«===SORRY!=== Error while compiling <tmp>No return arguments allowed when return value 42 is already specified in the signatureat <tmp>:1------> sub a(--> 42) { return 666 ⏏}» <lizmat> jnthn: so I guess a bare return is sorta expected in this case <jnthn> m: sub a(--> 42) { if 1 { return 666 } } <+camelia> rakudo-moar f2894d: ( no output ) <jnthn> Fail <jnthn> m: sub a(--> 42) { if 1 { return } }; say a <+camelia> rakudo-moar f2894d: OUTPUT«Nil» <jnthn> That's a pretty bad discrepancy <jnthn> m: sub a(--> 42) { return }; say a <+camelia> rakudo-moar f2894d: OUTPUT«42» jnthn wonders how that works :) <lizmat> rakudobug material ? <jnthn> Surely <jnthn> I didn't even know we had that feature :P