[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20081023115421.GD8343@brain>
Date: Thu, 23 Oct 2008 12:54:21 +0100
From: Andy Whitcroft <apw@...dowen.org>
To: Tetsuo Handa <penguin-kernel@...ove.SAKURA.ne.jp>
Cc: rdunlap@...otime.net, jschopp@...tin.ibm.com,
linux-kernel@...r.kernel.org
Subject: Re: [checkpatch.pl] two bugs
On Thu, Oct 23, 2008 at 08:27:34PM +0900, Tetsuo Handa wrote:
> Hello.
>
> I think these are bugs.
>
> Regards.
> -----
>
> Bug 1:
> assignment in 'if' is not warned if '\n' is inserted before the assignment.
Yep that looks wrong, too line oriented.
> # cat /tmp/test1.c
> void foo(void)
> {
> int i = 0;
> if (0 ||
> (i = 0) != 0)
> return;
> }
> # /usr/src/vanilla/linux-2.6.27.3/scripts/checkpatch.pl --file /tmp/test1.c
> total: 0 errors, 0 warnings, 7 lines checked
>
> /tmp/test1.c has no obvious style problems and is ready for submission.
> # ./scripts/checkpatch.pl-testing --strict --file /tmp/test1.c
> total: 0 errors, 0 warnings, 0 checks, 7 lines checked
>
> /tmp/test1.c has no obvious style problems and is ready for submission.
>
>
>
> Bug 2:
> 'while' placed after 'if { }' block is not handled properly.
>
> # cat /tmp/test2.c
> int i;
> void foo(void)
> {
> if (!i) {
> i++;
> return;
> }
> while (i);
> }
> # /usr/src/vanilla/linux-2.6.27.3/scripts/checkpatch.pl --file /tmp/test2.c
> ERROR: trailing statements should be on next line
> #8: FILE: tmp/test2.c:8:
> + while (i);
>
> ERROR: while should follow close brace '}'
> #8: FILE: tmp/test2.c:8:
> + }
> + while (i);
>
> total: 2 errors, 0 warnings, 9 lines checked
>
> /tmp/test2.c has style problems, please review. If any of these errors
> are false positives report them to the maintainer, see
> CHECKPATCH in MAINTAINERS.
> # ./scripts/checkpatch.pl-testing --strict --file /tmp/test2.c
> ERROR: trailing statements should be on next line
> #8: FILE: tmp/test2.c:8:
> + while (i);
> + while (i);
Hmmm, we have done a lot of work here to figure out this is a while
without a do and therefore the ; should be on the next line; yet we then
let the looser check below fire too. A bug indeed.
> ERROR: while should follow close brace '}'
> #8: FILE: tmp/test2.c:8:
> + }
> + while (i);
>
> total: 2 errors, 0 warnings, 0 checks, 9 lines checked
Thanks for your reports. Will get them on the tofix list.
-apw
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists