On 08/03/2014 08:46 PM, Joe Perches wrote:
On Sun, 2014-08-03 at 20:03 -0700, Hans Wennborg wrote:
On 08/03/2014 07:50 PM, Joe Perches wrote:
0x%<foo> should be used to emit hexadecimal values.

Uses of 0x%[udi] emit decimal values but these should
probably instead use 0x%x variants.

Warn on these uses.

Good idea!
[]
diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
[]
@@ -4985,6 +4985,10 @@ sub process {
                while ($line =~ /(?:^|")([X\t]*)(?:"|$)/g) {
                        $string = substr($rawline, $-[1], $+[1] - $-[1]);
                        $string =~ s/%%/__/g;
+                       if ($string =~ 
/(0x(?<!%)%[0-9.\*]*[Ll]*[udi])(?![xX])/) {

Maybe the regex should have a \b to check for a word boundary before the
0 to avoid matching things like "800x%d"? (I don't know if that occurs
in the kernel, but I've seen it elsewhere.)

Maybe.

Code it to do the appropriate thing and test it too.
See if there any other cases that should be emitted.

I grepped with your regex over the code and didn't get any false positives, so it seems fine. Feel free to ignore my previous comment.

Thanks,
Hans
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to