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 ncw
Recipients ncw
Date 2015-04-24.12:36:01
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1429878962.91.0.558127171831.issue24049@psf.upfronthosting.co.za>
In-reply-to
Content
Here is a patch to remove some unused code in `symtable.c`

In Python3 `from x import *` was banned from use in functions completely.

This is detected by `symtable_visit_alias` 

        if (st->st_cur->ste_type != ModuleBlock) {
            int lineno = st->st_cur->ste_lineno;
            int col_offset = st->st_cur->ste_col_offset;
            PyErr_SetString(PyExc_SyntaxError, IMPORT_STAR_WARNING);

However in `check_unoptimized` it checks for `import *` being used in a nested function etc.  This is the python2 behaviour which wasn't removed at the time the new python3 behaviour was added.

According to my analysis and tests it is now impossible for `check_unoptimized` to raise an error, since only valid uses of `import *` are left at the point it is called.

I propose to remove that function entirely, its call, and fix some stray documentation in this patch.
History
Date User Action Args
2015-04-24 12:36:02ncwsetrecipients: + ncw
2015-04-24 12:36:02ncwsetmessageid: <1429878962.91.0.558127171831.issue24049@psf.upfronthosting.co.za>
2015-04-24 12:36:02ncwlinkissue24049 messages
2015-04-24 12:36:02ncwcreate