my @count = qw/1 2 3 4/;
while ( my ( $iter, $value ) = each @count ){
if ($value < 2 ) {
print "$iter: one\n";
} elsif ($value == 2) { # NO ERROR HERE, NOW
say "$iter: HA!\n";
} else {
print "$iter: three!\n";
}
}
####
0: one
1: HA!
2: three!
3: three! # This is a very special case where 4 == three :-)
####
my @count = qw/1 2 3 4/;
while ( my ( $iter, $value ) = each @count ){
if ($value < 2 ) {
print "$iter: one\n";
} elsif ($value = 2) { # LOGICAL ERROR HERE
# assignment rather than test of equality
# but no 'plaints from Perl
print "$iter: HA!\n";
} else {
print "$iter: three!\n";
}
}
####
0: one
1: HA!
2: HA!
3: HA!