[Python-Dev] more timely detection of unbound locals (original) (raw)
Terry Reedy tjreedy at udel.edu
Tue May 10 19:56:58 CEST 2011
- Previous message: [Python-Dev] more timely detection of unbound locals
- Next message: [Python-Dev] more timely detection of unbound locals
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On 5/10/2011 10:59 AM, Nick Coghlan wrote:
On Tue, May 10, 2011 at 11:11 PM, R. David Murray<rdmurray at bitdance.com> wrote:
How about:
"reference to variable 'y' precedes an assignment that makes it a local variable" For comparison, the error messages I was able to elicit from 2.7 were as follows: # Module level NameError: name 'bob' is not defined # Function level reference to implicit global NameError: global name 'bob' is not defined # Early reference to local UnboundLocalError: local variable 'bob' referenced before assignment
I would change this to "local name 'bob' used before the assignment that makes it a local name"
Calling names 'variables' is itself a point of confusion.
# Early reference from closure NameError: free variable 'bob' referenced before assignment in enclosing scope Personally, I would just add "in current scope" to the existing error message for the unbound local case (and potentially collapse the exception hierarchy a bit by setting UnboundLocalError = NameError). Cheers, Nick.
-- Terry Jan Reedy
- Previous message: [Python-Dev] more timely detection of unbound locals
- Next message: [Python-Dev] more timely detection of unbound locals
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]