my (@r, $r); if (wantarray) { @r = &$code } else { $r = &$code } # ... later return wantarray ? @r : $r; #### wantarray ? @r : $r = &$code;