http://www.perlmonks.org?node_id=478303


in reply to Re^2: wantarray documentation in 5.8.7
in thread wantarray documentation in 5.8.7

Now the actual purpose of this thread is to find a form of words that distinguishes these cases, so the docs can be patched to avoid the current inaccuracy which suggests that wantarray is never meaningful at the top level.

I would guess, although I have not tested it, that the talk about the "top level" also applies to code entered via -e, even though that's not "a file."

The distinction seems to be about the "main" source code, so I'd say: "wantarray()'s result is unspecified in the top level of a source file a program's main source code, in a BEGIN , CHECK , INIT or END block, or in a DESTROY method."

Perhaps "main source code" isn't the right phrase, but it's closer to the point than "a source file."