The general solution for lvalue subroutines is to use Tie::Constrained.
my $checked; tie $checked => 'Tie::Constrained', sub { defined $_[0] }, $INIT_VALUE;
The real answer is that you can't return variables. You can return values. The variable being assigned to already exists outside of the function and is a receptacle for the value that is to be returned by the right side of the assignment operation. So tough luck. You could write some compiler macro, I suppose, if you wanted.
In reply to Re: Returning a tied scalar
by diotalevi
in thread Returning a tied scalar
by MarkusLaker
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |