Beefy Boxes and Bandwidth Generously Provided by pair Networks
Keep It Simple, Stupid
 
PerlMonks  

Re^8: Confused as to why the "casting context" is mis-behaving (void,void,scalar)

by tye (Sage)
on Oct 22, 2010 at 19:51 UTC ( [id://866866]=note: print w/replies, xml ) Need Help??


in reply to Re^7: Confused as to why the "casting context" is mis-behaving (void,void,scalar)
in thread Confused as to why the "casting context" is mis-behaving

I've always thought it was that the compiler can't perform static analysis across function calls.

That would be a reason for the warning to not happen (and a reasonable one). It is not a reason for the context to be scalar rather than void.

But, yes, I tried to remember what was discussed when this inconsistency was brought up and threw in a half-remembered guess at the last minute. It turns out to be incorrect. The "useless use of constant in void context" doesn't happen for the return value of a sub, even when the sub is called in a void context.

I don't recall specific enough details about the last time this came up to have found a prior discussion of it. But I eventually stumbled upon ysth providing a much better explanation of this exception, Re: If you believe in Lists in Scalar Context, Clap your Hands (which I don't believe is even the discussion I was remembering).

- tye        

  • Comment on Re^8: Confused as to why the "casting context" is mis-behaving (void,void,scalar)

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://866866]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others about the Monastery: (3)
As of 2024-04-20 07:18 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found