Re: Inconsistency in scripts/checkpatch.pl

From: Joe Perches
Date: Thu Jun 29 2017 - 23:12:38 EST


On Thu, 2017-06-29 at 20:26 -0500, Larry Finger wrote:
> Andy and Joe,
>
> In some new rtlwifi code, I get the following for one of the new macros:
>
> CHECK: Macro argument '__h2c' may be better as '(__h2c)' to avoid precedence issues
> #45005: FILE:
> drivers/net/wireless/realtek/rtlwifi/halmac/halmac_original_h2c_nic.h:1163:
> +#define AOAC_RSVD_PAGE3_GET_LOC_AOAC_REPORT(__h2c) \
> + LE_BITS_TO_4BYTE(__h2c + 0X00, 16, 8)
>
> When I make that change, I get
>
> CHECK: No space is necessary after a cast
> #45004: FILE:
> drivers/net/wireless/realtek/rtlwifi/halmac/halmac_original_h2c_nic.h:1162:
> + LE_BITS_TO_4BYTE((__h2c) + 0X00, 16, 8)
>
> Which CHECK should I fix?

The first. Only if you want to.

> To my eye, the second form is the false positive.

I agree. Ignore the 2nd warning for awhile.
.
A few trivial notes:

o 0X00 is kinda ugly to me. 0x00 is nicer.
o I presume that 0x00 could be a #define somewhere
o AOAC_RSVD_PAGE3_GET_LOC_AOAC_REPORT is a rather
long identifier at 35 chars.