See the current Perl documentation for wantarray.

Here is our local, out-dated (pre-5.6) version:

wantarray - get list vs array context of current subroutine call


Returns TRUE if the context of the currently executing subroutine is looking for a list value. Returns FALSE if the context is looking for a scalar. Returns the undefined value if the context is looking for no value (void context).

    return unless defined wantarray;    # don't bother doing more
    my @a = complex_calculation();
    return wantarray ? @a : "@a";