mirror of https://github.com/python/cpython
SF bug #473525 pyclbr broken
As the comments in the module implied, pyclbr was easily confused by "strange stuff" inside single- (but not triple-) quoted strings. It isn't anymore. Its behavior remains flaky in the presence of nested functions and classes, though. Bugfix candidate.
This commit is contained in:
parent
e877f8ba33
commit
c6ac8a78f6
|
@ -29,11 +29,8 @@ are recognized and imported modules are scanned as well, this
|
|||
shouldn't happen often.
|
||||
|
||||
BUGS
|
||||
- Continuation lines are not dealt with at all.
|
||||
- While triple-quoted strings won't confuse it, lines that look like
|
||||
def, class, import or "from ... import" stmts inside backslash-continued
|
||||
single-quoted strings are treated like code. The expense of stopping
|
||||
that isn't worth it.
|
||||
- Continuation lines are not dealt with at all, except inside strings.
|
||||
- Nested classes and functions can confuse it.
|
||||
- Code that doesn't pass tabnanny or python -t will confuse it, unless
|
||||
you set the module TABWIDTH vrbl (default 8) to the correct tab width
|
||||
for the file.
|
||||
|
@ -75,6 +72,10 @@ _getnext = re.compile(r"""
|
|||
[^'\\]*
|
||||
)*
|
||||
'''
|
||||
|
||||
| " [^"\\\n]* (?: \\. [^"\\\n]*)* "
|
||||
|
||||
| ' [^'\\\n]* (?: \\. [^'\\\n]*)* '
|
||||
)
|
||||
|
||||
| (?P<Method>
|
||||
|
|
Loading…
Reference in New Issue