Re: [PATCH 1/1] checkpatch: don't fake typedefs with #define

From: Phil Carmody
Date: Thu May 17 2012 - 17:19:38 EST


On 17/05/12 13:54 -0700, ext Joe Perches wrote:
> > +# check for deliberate avoidance of the above anti-typedef rule
> > + if ($line =~ /#\s*define\s+$Ident\s+$Type\b/) {
> > + WARN("NEW_TYPEDEFS",
> > + "do not fake typedefs using #define\n" . $herecurr);
> > + }
> > +
>
> I think the false positive rate is pretty high.
> I used this and don't see too many I'd remove.
>
> $ git grep -E "#\s*define\s+\w+\s+(struct|unsigned|char|short|int|long|const)\b"
>
> Got an example you want this to find?

Too many. Alas I can't share them. However, your input is most welcome, and that
grep shows that my regexp is *way* too broad. So auto-NACK-ing, and I'll now work
on something that doesn't include most of the above hits. Suggestions for a regexp
banning the fake typedefs that would get flagged were they to be mapped onto a
typedef would be most welcome. The context I'm seeing them is a clear checkpatch
avoidance mess, and I'd like to see it similarly flagged.

Cheers,
Phil
--
Phil Carmody
Tel: +372 5697 1161
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/