Message219932
Updated patch with the heuristics factored out into a helper function, with a more detailed explanation and additional logic to handle compound statements.
>>> def foo():
... print bar
File "<stdin>", line 2
print bar
^
SyntaxError: Missing parentheses in call to 'print'
It's still just basic string hackery, though. The one liner handling, for example, relies on the fact that ":<whitespace>print " and ":<whitespace>exec " are going to be uncommon outside Python 2 code being ported to Python 3, so it just looks for the first colon on the line and checks from there, without worrying about slice notation or dicts. |
|
Date |
User |
Action |
Args |
2014-06-07 12:37:07 | ncoghlan | set | recipients:
+ ncoghlan, gvanrossum, glyph, alex |
2014-06-07 12:37:07 | ncoghlan | set | messageid: <1402144627.2.0.95655395421.issue21669@psf.upfronthosting.co.za> |
2014-06-07 12:37:07 | ncoghlan | link | issue21669 messages |
2014-06-07 12:37:06 | ncoghlan | create | |
|