in reply to arrays, context, and print - oh my.
means printing "1234", then getting the second element of the list returned by print - except that perl can't parse it. Which is not what you mean - so perl warns you about that (it's already a syntax error, yet you get a warning as well). However, its heuristics when to warn are were coded by a squirrel being high on glue:print (1,2,3,4)[1];
With such an illogical mess, you won't see me advocating to enable warnings.print(1) # No warning. print (1) # Warning. print (1) # No warning. printf (1) # Warning. sprintf (1) # No warning. print (1) # No warning. print (1) || die; # No warning. print (1) or die; # No warning. print (1) xor die; # Warning. print (1) and die; # No warning. print (1) && die; # Warning. print (1) == 1 # No warning. print (1) != 1 # No warning. print (1) <=> 1 # Warning. print (1); next # No warning. print (1), next # Warning. print (1) | next # No warning. print (1) & next # Warning. print ("(") # Warning. print (")") # Warning. print ("1"); # No warning (trailing semi-colon). print (")"); # Warning (even with semi-colon). print ("1"); die; # No warning. print ("("); die; # Warning.
I heard this warning will play a major role in Dan Browns new novel.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: arrays, context, and print - oh my.
by eric256 (Parson) on Aug 09, 2005 at 18:51 UTC | |
by Anonymous Monk on Aug 10, 2005 at 08:57 UTC | |
by Anonymous Monk on Aug 10, 2005 at 09:03 UTC |