checkpatch: pull out known acceptable typedefs
Within the type checker we have a number of common kernel types which must be implemented as typedefs. Pull those out so that we can use the same expressions to trigger exclusions. Signed-off-by: Andy Whitcroft <apw@shadowen.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
afbe8d283b
commit
8ed22cad9c
1 changed files with 7 additions and 1 deletions
|
@ -146,6 +146,11 @@ our $UTF8 = qr {
|
||||||
| \xF4[\x80-\x8F][\x80-\xBF]{2} # plane 16
|
| \xF4[\x80-\x8F][\x80-\xBF]{2} # plane 16
|
||||||
}x;
|
}x;
|
||||||
|
|
||||||
|
our $typeTypedefs = qr{(?x:
|
||||||
|
(?:__)?(?:u|s|be|le)(?:\d|\d\d)|
|
||||||
|
atomic_t
|
||||||
|
)};
|
||||||
|
|
||||||
our @typeList = (
|
our @typeList = (
|
||||||
qr{void},
|
qr{void},
|
||||||
qr{(?:unsigned\s+)?char},
|
qr{(?:unsigned\s+)?char},
|
||||||
|
@ -159,7 +164,6 @@ our @typeList = (
|
||||||
qr{float},
|
qr{float},
|
||||||
qr{double},
|
qr{double},
|
||||||
qr{bool},
|
qr{bool},
|
||||||
qr{(?:__)?(?:u|s|be|le)(?:\d|\d\d)},
|
|
||||||
qr{struct\s+$Ident},
|
qr{struct\s+$Ident},
|
||||||
qr{union\s+$Ident},
|
qr{union\s+$Ident},
|
||||||
qr{enum\s+$Ident},
|
qr{enum\s+$Ident},
|
||||||
|
@ -179,6 +183,7 @@ sub build_types {
|
||||||
(?:$Modifier\s+|const\s+)*
|
(?:$Modifier\s+|const\s+)*
|
||||||
(?:
|
(?:
|
||||||
(?:typeof|__typeof__)\s*\(\s*\**\s*$Ident\s*\)|
|
(?:typeof|__typeof__)\s*\(\s*\**\s*$Ident\s*\)|
|
||||||
|
(?:$typeTypedefs\b)|
|
||||||
(?:${all}\b)
|
(?:${all}\b)
|
||||||
)
|
)
|
||||||
(?:\s+$Modifier|\s+const)*
|
(?:\s+$Modifier|\s+const)*
|
||||||
|
@ -1589,6 +1594,7 @@ sub process {
|
||||||
if ($line =~ /\btypedef\s/ &&
|
if ($line =~ /\btypedef\s/ &&
|
||||||
$line !~ /\btypedef\s+$Type\s+\(\s*\*?$Ident\s*\)\s*\(/ &&
|
$line !~ /\btypedef\s+$Type\s+\(\s*\*?$Ident\s*\)\s*\(/ &&
|
||||||
$line !~ /\btypedef\s+$Type\s+$Ident\s*\(/ &&
|
$line !~ /\btypedef\s+$Type\s+$Ident\s*\(/ &&
|
||||||
|
$line !~ /\b$typeTypedefs\b/ &&
|
||||||
$line !~ /\b__bitwise(?:__|)\b/) {
|
$line !~ /\b__bitwise(?:__|)\b/) {
|
||||||
WARN("do not add new typedefs\n" . $herecurr);
|
WARN("do not add new typedefs\n" . $herecurr);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue