if (my @f = do { my @f; ((@f = some_code()) == 1 || (@f = some_other_code()) == 1) ? @f : () }) { #... }