return
return expr
Returns from a subroutine (or eval
) with the value of
expr
. (In the absence of an explicit
return
, the value of the last
expression evaluated is returned.) Use of return
outside of a subroutine or
eval
will result in a fatal
error.
The supplied expression will be evaluated in the context of
the subroutine invocation. That is, if the subroutine was called
in a scalar context, expr
is also
evaluated in scalar context. If the subroutine was invoked in a
list context, then expr
is also
evaluated in list context and can return a list value. A return
with no argument returns the undefined value in scalar context and
a null list in list context. The context of the subroutine call
can be determined from within the subroutine by using the
(misnamed) wantarray
function.
18.116.15.161