The lexical variable
$pid is evaluated and the result is then discarded. The variable is not
tie-d to anything, so there can be no side effect. Don't you see a warning from this (although you don't
use warnings; in your sample code)? All output from the
$connection->rpc() function call is assigned to
@resp. What's the point of having
$pid in the statement? A typo or a thinko is strongly suggested.
>perl -wMstrict -le
"my $pid = 'foo';
my @resp = qw{ a b c };
sub S { return qw{ FOO bar quux } }
$pid, @resp = S();
print qq{$pid @resp};
"
Useless use of private variable in void context at -e line 1.
foo FOO bar quux