lkml.org 
[lkml]   [2017]   [Jan]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH] checkpatch.pl: warn against using %Z
From
Date
On Tue, 2017-01-10 at 02:59 +0300, Alexey Dobriyan wrote:
> %Z is going to be removed in favour of %z.
>
> Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
> ---
>
> scripts/checkpatch.pl | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> --- a/scripts/checkpatch.pl
> +++ b/scripts/checkpatch.pl
> @@ -5189,6 +5189,12 @@ sub process {
> "\%Ld/%Lu are not-standard C, use %lld/%llu\n" . $herecurr);
> last;
> }
> + # check for %Z
> + if ($string =~ /(?<!%)%[\*\d\.\$]*Z[diouxX]/) {
> + WARN("PRINTF_Z",
> + "%Z is non-standard C, use %z\n" . $herecurr);
> + last;
> + }
> if ($string =~ /0x%[\*\d\.\$\Llzth]*[udi]/) {
> ERROR("PRINTF_0xDECIMAL",
> "Prefixing 0x with decimal output is defective\n" . $herecurr);

Right concept, slightly incorrect implementation.

diouxX isn't necessary, ?<!% isn't necessary either as
there's a s/%%/__/g above it, last; probably isn't a
good idea as a single string could have both %Lu and
%Zu and unrelated, thanks for reminding me, I knew but
forgot to fix, the PRINTF_0xDECIMAL is defective as
there's a requirement that the match string only use
upper case.

\
 
 \ /
  Last update: 2017-01-09 23:17    [W:0.046 / U:12.008 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site