Re: [PATCH] checkpatch: prevent reporting C99_COMMENTS error for SPDX tag in .c file

From: Joe Perches
Date: Tue Jun 30 2020 - 10:47:03 EST


(adding Vadem Bendebury who added the tolerance test)

On Tue, 2020-06-30 at 15:35 +0100, Quentin Monnet wrote:
> When checkpatch.pl is invoked with "--ignore C99_COMMENT_TOLERANCE", it
> reports C99-style comments found in the code, by matching on the
> double-slash pattern "//". This includes the leading slashes before the
> SPDX tags that are now used in a majority of C files.
>
> Such tags are commented with the double-slash on purpose, and should not
> trigger errors from checkpatch. Let's ignore them when searching for
> C99-style comments to report.
>
> Signed-off-by: Quentin Monnet <quentin@xxxxxxxxxxxxx>

I think this unnecessary as perhaps those that want no
c99 comments likely _really_ want no c99 comments.

> ---
> scripts/checkpatch.pl | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
> index 3cacc122c528..67f350c580ea 100755
> --- a/scripts/checkpatch.pl
> +++ b/scripts/checkpatch.pl
> @@ -3983,7 +3983,10 @@ sub process {
> }
>
> # no C99 // comments
> - if ($line =~ m{//}) {
> + if ($line =~ m{//} &&
> + !($rawline =~ m{// SPDX-License-Identifier:} &&
> + $realfile =~ /\.c$/ &&
> + $realline == $checklicenseline)) {
> if (ERROR("C99_COMMENTS",
> "do not use C99 // comments\n" . $herecurr) &&
> $fix) {