Re: coccinelle and bitmask arithmetic (was: Re: [patch] TTY: synclink, small cleanup in dtr_rts())

Dan Carpenter
2013-01-29T17:31:35Z

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

On Tue, Jan 29, 2013 at 05:19:43PM +0100, Julia Lawall wrote:
> If the definition of a bitmask is an identifier in all capital letters,
> that would be easy. Another possibility is such an identifier that is
> defined to a value expressed beginning with 0x. Another possibility is
> such an identifier that is sometimes used with & and | and sometimes used
> with an arithmetic operation. I will give them a try.
>

Oddly enough, this thread started because I wrote a script to do
this in Smatch. It turns out not as useful as I had hoped, so I
wasn't planning to push it.

Anyway, I've gzipped it and attached it. It's 350k because it has
a list of 50k macros which were used as bit masks. Hopefully, it's
helpful.

It generates 350 warnings, but they are almost all false positives.
I have sent two patches based on the output.

regards,
dan carpenter

[-- Attachment #2: 0001-check_bit_masks-complain-if-bitmasks-are-used-for-ma.patch.gz --]
[-- Type: application/octet-stream, Size: 353926 bytes --]