Mercurial > cpython-lru_cache-weakref
diff Lib/compiler/pycodegen.py @ 15185:100beebde9df legacy-trunk
Fix SF bug #116263: support for from .. import *
transformer.py: return '*', None from com_import_as_name
pycodegen.py: special case for name == '*'
pyassem.py: fix stack counting for IMPORT_ opcodes
| author | Jeremy Hylton <jeremy@alum.mit.edu> |
|---|---|
| date | Thu, 12 Oct 2000 20:23:23 +0000 |
| parents | a665bdc4922f |
| children | 04e76e08e10f |
line wrap: on
line diff
--- a/Lib/compiler/pycodegen.py Thu Oct 12 20:07:09 2000 +0000 +++ b/Lib/compiler/pycodegen.py Thu Oct 12 20:23:23 2000 +0000 @@ -439,9 +439,14 @@ for name, alias in node.names: if name == '*': self.namespace = 0 - self.emit('IMPORT_FROM', name) - self._resolveDots(name) - self.storeName(alias or name) + self.emit('IMPORT_STAR') + # There can only be one name w/ from ... import * + assert len(node.names) == 1 + return + else: + self.emit('IMPORT_FROM', name) + self._resolveDots(name) + self.storeName(alias or name) self.emit('POP_TOP') def _resolveDots(self, name):
