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!


Signed-off-by: Joe Perches <j...@perches.com>
Noticed-by: Hans Wennborg <h...@hanshq.net>
---
  scripts/checkpatch.pl | 4 ++++
  1 file changed, 4 insertions(+)

diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index da74e65..0178fe0 100755
--- 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.)

 - 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