mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-12-06 19:41:15 +01:00
c6191983e9
spatch can let us know whether a file has parsed "perfectly" or not. The more perfect it parses, the likelier any semantic patches are to apply. I've used this script to identify problem areas in our code.
19 lines
452 B
Bash
Executable File
19 lines
452 B
Bash
Executable File
#!/bin/sh
|
|
|
|
# Echo the name of every argument of this script that is not "perfect"
|
|
# according to coccinelle's --parse-c.
|
|
|
|
top="$(dirname "$0")/../.."
|
|
|
|
for fn in "$@"; do
|
|
|
|
if spatch -macro_file_builtins "$top"/scripts/coccinelle/tor-coccinelle.h \
|
|
-I "$top" -I "$top"/src -I "$top"/ext --parse-c "$fn" \
|
|
2>/dev/null | grep "perfect = 1" > /dev/null; then
|
|
: # it's perfect
|
|
else
|
|
echo "$fn"
|
|
fi
|
|
|
|
done
|