On Sun, 2024-03-31 at 13:46 +0000, Mac Xu wrote: > > On Thu, 2024-03-28 at 15:21 +1300, Barry Song wrote: > > > From: Xining Xu <mac.xxn@xxxxxxxxxxx> > > > > > > If function-like macros do not utilize a parameter, it might result in a > > > build warning. In our coding style guidelines, we advocate for utilizing > > > static inline functions to replace such macros. This patch verifies > > > compliance with the new rule. > > [] > > > diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl > [] > > It seems this logic is a bit redundant to existing > > code and might be better added in the block that starts > > > > (line 6026) > > # check if any macro arguments are reused (ignore '...' and 'type') > > > > as that already does each param in a #define and > > ignores ... and type > > Hi Joe, > > Thank you for your comments with insights, as you said, code block of line 6026 is a better place to > place this new logic, as it already handles the logic I'd wanted like extracting, splitting and trimming > the arguments, excluding the trailing comments etc. > > By placing the logic in the new place, code duplicates are reduced. > > Here's my new code (inserted from line 6044): > +# check if this is an unused argument > + if ($define_stmt !~ /\b$arg\b/) { > + WARN("UNUSED_ARG_IN_MACRO", Perhaps WARN("MACRO_ARG_UNUSED", ... to better match the others above it in the block: CHK("MACRO_ARG_REUSE", and CHK("MACRO_ARG_PRECEDENCE", Other than that trivial bit, seems ok.