Either you are mistaken or I misunderstand you.
$perl -MData::Dumper -we 'my @a = my ($x,$y,$z) = localtime;print Dump
+er \@a'
$VAR1 = [
38,
27,
10
];
$perl -MData::Dumper -we 'my @a = () = localtime;print Dumper \@a'
$VAR1 = [];
In both cases @a is assigned the result of the ...=localtime list assignment. And as perlop says,
"a list assignment in list context produces the list of
lvalues assigned to". In the my() case, the lvalues are the ones returned by my(). Though there seems to be a bug here:
$perl -MData::Dumper -we 'my @a = my (undef,$y,$z) = localtime
;print Dumper \@a'
$VAR1 = [
49,
32,
10
];
I would have expected [undef,32,10] there. |