Message241937
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. |
|
Date |
User |
Action |
Args |
2015-04-24 12:36:02 | ncw | set | recipients:
+ ncw |
2015-04-24 12:36:02 | ncw | set | messageid: <1429878962.91.0.558127171831.issue24049@psf.upfronthosting.co.za> |
2015-04-24 12:36:02 | ncw | link | issue24049 messages |
2015-04-24 12:36:02 | ncw | create | |
|