I believe the reason for the scalar (not void) context for the commented lines so that you don't get warnings from:
I've always thought it was that the compiler can't perform static analysis across function calls. (By the time of assigning return values, does the compiler know that any element of the stack was a literal?)
In reply to Re^7: Confused as to why the "casting context" is mis-behaving (void,void,scalar)
by chromatic
in thread Confused as to why the "casting context" is mis-behaving
by kiz
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |