This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author ncoghlan
Recipients DragonFireCK, Horpner, alex, benjamin.peterson, brett.cannon, bruno.dupuis, cvrebert, georg.brandl, ikelly, meador.inge, mrabarnett, ncoghlan, python-dev, steven.daprano, terry.reedy
Date 2012-12-06.02:55:01
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1354762501.94.0.324594703849.issue16619@psf.upfronthosting.co.za>
In-reply-to
Content
First reaction is +1 for finally switching to real constant nodes in the AST for 3.4+. This is an inherited behaviour from 2.x where these were ordinary names rather than true keywords, so we weren't able to completely disallow overwriting them.

As a smaller impact change for earlier versions, we should be able to do something in compiler_nameop [1] that picks up the 3 singleton names and allows only LOAD_CONST, erroring out otherwise.

http://hg.python.org/cpython/file/default/Python/compile.c#l2625
History
Date User Action Args
2012-12-06 02:55:02ncoghlansetrecipients: + ncoghlan, brett.cannon, georg.brandl, terry.reedy, ikelly, Horpner, benjamin.peterson, mrabarnett, steven.daprano, alex, cvrebert, meador.inge, python-dev, DragonFireCK, bruno.dupuis
2012-12-06 02:55:01ncoghlansetmessageid: <1354762501.94.0.324594703849.issue16619@psf.upfronthosting.co.za>
2012-12-06 02:55:01ncoghlanlinkissue16619 messages
2012-12-06 02:55:01ncoghlancreate