in reply to Re: Why are "a ||= b" and "a = a || b" different?
in thread Why are "a ||= b" and "a = a || b" different?

To verify whether a function is called in list context or scalar context, use wantarray.

Here's a snippet of code to verify my assumption:

my $a; ($a) = ($a) || foo(); ($a) ||= foo(); sub foo { wantarray ? print("list\n") : print("scalar\n"); return 0; }
and it prints
list
scalar