
On 03/23/2012 07:21 AM, Osier Yang wrote:
On 03/22/2012 07:33 PM, Martin Kletzander wrote:
After cleanup introduced with previous commit, there is a need for syntax-check rule taking care of return(). Regexp used in 'prohibit' parameter is taken from the cleanup commit and modified so it fits 'grep -E' format. Semicolon at the end is needed, otherwise the regexp could match return with cast.
No exception is needed thanks to files excused by default. The exception is not even needed for python files because 1) when returning a tuple, you can still omit parentheses around (unless there is only one value inside, but that's very unusual case), 2) return in python doesn't need semicolon at the end of statement when there is no statement following (and statement following 'return' doesn't make sense).
This forces the Python coding style actually, prohibiting one writes Python codes like:
def test(): return (1);
def test1(): return (1,2,3);
regardless of whether coding like this is good or bad, usual or unsual, they are legal in Python, and we don't say they are not allowed in HACKING or somewhere else.
Not sure if we should allow this, even we will allow that, we need to document it somewhere, or more clear and specific for .py files in halt message.
You're right. I feel inclined to the version where we don't force this for python code. My initial concern was about python-generated C code, but that's a small portion of the code and it's fixed already. Instead of creating some internal python code style, I'll send v2 with the exception in a minute.