<div dir="ltr">Hi Everyone,<div>I was bitten today by this snippet that I still can&#39;t understand (second test fails):</div><div><br></div><div><div>use v5.14;</div><div>use Test::More;</div><div><br></div><div>my @l = qw/red blue green/;</div>
<div><br></div><div>my $has_red_1 =   grep /red/, @l;</div><div>my $has_red_2 = ( grep /red/, @l ? 1 : 0 ); </div><div><br></div><div>is ( $has_red_1, 1, &quot;Expected&quot; ); </div><div>is ( $has_red_2, 1, &quot;This one fails - Why ?&quot; ); </div>
<div><br></div><div>done_testing;</div></div><div><br></div><div>I know that grep does nothing in void context, but here I have a valid boolean context - what&#39;s going on ?</div><div><br></div></div>