# Single Str return value: this works sub f1(Str $in --> Str) { $in; } # Tuple of Str as return value: this works sub f2(Str $in) { ($in, $in); } # Tuple of Str as return value with type annotation: this doesn't works sub f2(Str $in --> (Str, Str)) { ($in, $in); }