From ed5640d8b587fbcfed7dd7967f3de04b37a76f26 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 11:06:44 +0200 Subject: Adding upstream version 4:7.4.7. Signed-off-by: Daniel Baumann --- bin/find-unused-typedefs.py | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100755 bin/find-unused-typedefs.py (limited to 'bin/find-unused-typedefs.py') diff --git a/bin/find-unused-typedefs.py b/bin/find-unused-typedefs.py new file mode 100755 index 000000000..0fd96749c --- /dev/null +++ b/bin/find-unused-typedefs.py @@ -0,0 +1,36 @@ +#!/usr/bin/python3 + +import subprocess + +# find typedefs, excluding the externals folder +a = subprocess.Popen("git grep -P 'typedef\\s+.+\\s+\\w+;' -- \"[!e][!x][!t]*\"", stdout=subprocess.PIPE, shell=True) + +# parse out the typedef names +typedefSet = set() +with a.stdout as txt: + for line in txt: + idx2 = line.rfind(b";") + idx1 = line.rfind(b" ", 0, idx2) + typedefName = line[idx1+1 : idx2] + if typedefName.startswith(b"*"): + typedefName = typedefName[1:] + # ignore anything less than 5 characters, it's probably a parsing error + if len(typedefName) < 5: continue + typedefSet.add(typedefName) + +for typedefName in sorted(typedefSet): + print(b"checking: " + typedefName) + a = subprocess.Popen(["git", "grep", "-wn", typedefName], stdout=subprocess.PIPE) + foundLine2 = b"" + cnt = 0 + with a.stdout as txt2: + for line2 in txt2: + cnt = cnt + 1 + foundLine2 += line2 + if cnt > 2: break + a.kill() + if cnt == 1: + print(b"remove: " + foundLine2) + elif cnt == 2: + print(b"inline: " + foundLine2) + -- cgit v1.2.3