[issue10769] ast: provide more useful range information
Sven Brauch
report at bugs.python.org
Sun Dec 26 13:46:25 CET 2010
Sven Brauch <svenbrauch at googlemail.com> added the comment:
Hi,
yeah Terry, that's exactly what most people whom I talked about this said (me too).
Anyway, here's the patch which -- in my opinion -- fixes this behavior:
--- python-orig/Python/ast.c 2010-10-19 03:22:07.000000000 +0200
+++ python-ast-fix/Python/ast.c 2010-12-26 13:25:48.000000000 +0100
@@ -1742,8 +1742,6 @@
tmp = ast_for_trailer(c, ch, e);
if (!tmp)
return NULL;
- tmp->lineno = e->lineno;
- tmp->col_offset = e->col_offset;
e = tmp;
}
if (TYPE(CHILD(n, NCH(n) - 1)) == factor) {
The offsets for "foo.bar.baz" before the patch:
[1, 0, <_ast.Attribute>]
[1, 0, <_ast.Attribute>, 'baz']
[1, 0, <_ast.Name>, 'bar']
[1, 0, 'foo']
... and after the patch:
[1, 0, <_ast.Attribute>]
[1, 7, <_ast.Attribute>, 'baz']
[1, 3, <_ast.Name>, 'bar']
[1, 0, 'foo']
It would really be great if that could be applied.
Best regards,
Sven
----------
_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue10769>
_______________________________________
More information about the Python-bugs-list
mailing list