@x = ( f(), g(), h() );
####
$x = ( f(), g(), h() );
##
##
( f(), g(), h() );
1;
##
##
sub { ( f(), g(), h() ) }
##
##
@x = sub { ( f(), g(), h() ) }->();
##
##
$x = sub { ( f(), g(), h() ) }->();
##
##
use strict;
use warnings;
sub cx {
print !defined(wantarray()) ? 'v'
: !wantarray() ? 's'
: 'l';
}
my ($x, @x);
print('v: '); ( cx(), cx(), cx() ) ; print("\n");
print('cv: '); sub { ( cx(), cx(), cx() ) }->(); print("\n\n");
print('s: '); $x = ( cx(), cx(), cx() ) ; print("\n");
print('cs: '); $x = sub { ( cx(), cx(), cx() ) }->(); print("\n\n");
print('l: '); @x = ( cx(), cx(), cx() ) ; print("\n");
print('cl: '); @x = sub { ( cx(), cx(), cx() ) }->(); print("\n");
##
##
v: vvv
cv: vvv
s: vvs \ mismatch
cs: sss /
l: lll
cl: lll
##
##
use strict;
use warnings;
my $x;
$x = ( 'abc', 'def' ) ; # Warns
$x = sub { ( 'abc', 'def' ) }->(); # Doesn't warn
##
##
Useless use of a constant in void context at line 5.