diff options
author | Jeremy Hylton <jeremy@alum.mit.edu> | 2001-08-29 20:57:43 (GMT) |
---|---|---|
committer | Jeremy Hylton <jeremy@alum.mit.edu> | 2001-08-29 20:57:43 (GMT) |
commit | 1936745668f44dd121b50fef31a70efc07cc4ebf (patch) | |
tree | 378ba3f0b48654c7ac6f7e8514cd563d8ed51e93 | |
parent | 7845cf8d37f3b1d6cb29cdc9998d1c8b607e251e (diff) | |
download | cpython-1936745668f44dd121b50fef31a70efc07cc4ebf.zip cpython-1936745668f44dd121b50fef31a70efc07cc4ebf.tar.gz cpython-1936745668f44dd121b50fef31a70efc07cc4ebf.tar.bz2 |
Generate SET_LINENO for list and tuple literals when the open paren
starts a new line.
Also fix undetected typo in visitDict() -- uncovered by recent change
to add lineno attrs to atoms.
-rw-r--r-- | Lib/compiler/pycodegen.py | 4 | ||||
-rw-r--r-- | Tools/compiler/compiler/pycodegen.py | 4 |
2 files changed, 6 insertions, 2 deletions
diff --git a/Lib/compiler/pycodegen.py b/Lib/compiler/pycodegen.py index b0bddb7..07c82f7 100644 --- a/Lib/compiler/pycodegen.py +++ b/Lib/compiler/pycodegen.py @@ -953,11 +953,13 @@ class CodeGenerator: self.emit('LOAD_CONST', Ellipsis) def visitTuple(self, node): + self.set_lineno(node) for elt in node.nodes: self.visit(elt) self.emit('BUILD_TUPLE', len(node.nodes)) def visitList(self, node): + self.set_lineno(node) for elt in node.nodes: self.visit(elt) self.emit('BUILD_LIST', len(node.nodes)) @@ -970,7 +972,7 @@ class CodeGenerator: def visitDict(self, node): lineno = getattr(node, 'lineno', None) if lineno: - set.emit('SET_LINENO', lineno) + self.emit('SET_LINENO', lineno) self.emit('BUILD_MAP', 0) for k, v in node.items: lineno2 = getattr(node, 'lineno', None) diff --git a/Tools/compiler/compiler/pycodegen.py b/Tools/compiler/compiler/pycodegen.py index b0bddb7..07c82f7 100644 --- a/Tools/compiler/compiler/pycodegen.py +++ b/Tools/compiler/compiler/pycodegen.py @@ -953,11 +953,13 @@ class CodeGenerator: self.emit('LOAD_CONST', Ellipsis) def visitTuple(self, node): + self.set_lineno(node) for elt in node.nodes: self.visit(elt) self.emit('BUILD_TUPLE', len(node.nodes)) def visitList(self, node): + self.set_lineno(node) for elt in node.nodes: self.visit(elt) self.emit('BUILD_LIST', len(node.nodes)) @@ -970,7 +972,7 @@ class CodeGenerator: def visitDict(self, node): lineno = getattr(node, 'lineno', None) if lineno: - set.emit('SET_LINENO', lineno) + self.emit('SET_LINENO', lineno) self.emit('BUILD_MAP', 0) for k, v in node.items: lineno2 = getattr(node, 'lineno', None) |