public inbox for passt-dev@passt.top
 help / color / mirror / code / Atom feed
From: David Gibson <david@gibson.dropbear.id.au>
To: Stefano Brivio <sbrivio@redhat.com>
Cc: passt-dev@passt.top
Subject: Re: [PATCH 3/9] cppcheck: Suppress constParameterCallback errors
Date: Sat, 8 Jun 2024 16:32:22 +1000	[thread overview]
Message-ID: <ZmP69h3NGLxJUPaX@zatzit> (raw)
In-Reply-To: <20240607204940.5a1de94f@elisabeth>

[-- Attachment #1: Type: text/plain, Size: 2191 bytes --]

On Fri, Jun 07, 2024 at 08:49:40PM +0200, Stefano Brivio wrote:
> On Thu,  6 Jun 2024 20:09:43 +1000
> David Gibson <david@gibson.dropbear.id.au> wrote:
> 
> > We have several functions which are used as callbacks for NS_CALL() which
> > only read their void * parameter, they don't write it.  The new
> > constParameterCallback warning in cppcheck 2.14.1 complains that this
> > parameter could be const void *, also pointing out that that would require
> > casting the function pointer when used as a callback.
> > 
> > Casting the function pointers seems substantially uglier than using a
> > non-const void * as the parameter, especially since in each case we cast
> > the void * to a const pointer of specific type immediately.  So, suppress
> > that error from cppcheck.
> > 
> > Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
> > ---
> >  Makefile | 1 +
> >  1 file changed, 1 insertion(+)
> > 
> > diff --git a/Makefile b/Makefile
> > index 8ea17576..22f05813 100644
> > --- a/Makefile
> > +++ b/Makefile
> > @@ -314,5 +314,6 @@ cppcheck: $(SRCS) $(HEADERS)
> >  	$(SYSTEM_INCLUDES:%=--suppress=unmatchedSuppression:%/*)	\
> >  	--inline-suppr							\
> >  	--suppress=unusedStructMember					\
> > +	--suppress=constParameterCallback				\
> 
> On versions before 2.14, this now raises an unmatchedSuppression... I'm
> not sure how to deal with this. Should we give up and just add a
> --suppress=unmatchedSuppression for all the source files? I can't think
> of anything better at the moment.

No, I don't think we want to do that, that's likely to leave stale
suppressions about.

Although it logically makes sense to suppress this globally, there are
only three spots it actually occurs, so I'll rewrite to suppress in
just those places, along with a similarly local unmatchedSuppression
suppression.

> I applied the rest of the series, just not this patch.

Nice.. although this was the only one actually blocking other work.

-- 
David Gibson			| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au	| minimalist, thank you.  NOT _the_ _other_
				| _way_ _around_!
http://www.ozlabs.org/~dgibson

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

  reply	other threads:[~2024-06-08  6:32 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-06-06 10:09 [PATCH 0/9] Some more static checker fixes David Gibson
2024-06-06 10:09 ` [PATCH 1/9] tcp: Make pointer const in tcp_revert_seq David Gibson
2024-06-06 10:09 ` [PATCH 2/9] udp: Make rport calculation more local David Gibson
2024-06-06 10:09 ` [PATCH 3/9] cppcheck: Suppress constParameterCallback errors David Gibson
2024-06-07 18:49   ` Stefano Brivio
2024-06-08  6:32     ` David Gibson [this message]
2024-06-08 11:48       ` Stefano Brivio
2024-06-06 10:09 ` [PATCH 4/9] Remove pointless macro parameters in CALL_PROTO_HANDLER David Gibson
2024-06-06 10:09 ` [PATCH 5/9] clang-tidy: Enable the bugprone-macro-parentheses check David Gibson
2024-06-06 10:09 ` [PATCH 6/9] util: Use unsigned indices for bits in bitmaps David Gibson
2024-06-06 10:09 ` [PATCH 7/9] conf: Safer parsing of MAC addresses David Gibson
2024-06-06 10:09 ` [PATCH 8/9] lineread: Use ssize_t for line lengths David Gibson
2024-06-06 10:09 ` [PATCH 9/9] util: Use 'long' to represent millisecond durations David Gibson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ZmP69h3NGLxJUPaX@zatzit \
    --to=david@gibson.dropbear.id.au \
    --cc=passt-dev@passt.top \
    --cc=sbrivio@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://passt.top/passt

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for IMAP folder(s).