Smatch scripts
Original smatch scripts
This are the scripts that come with smatch and are not Linux kernel specific.
ampersand_missing.sh
- & instead of && in
"if (foo && bar)"
code_after_ret.pl
- Finds dead code like code after a
return
. Not as effectiv like unreached_code.pl
eqeq.pl
- = instead of == in
"if (foo == bar)"
unreached_code.pl
- Finds unreachable code like code after return, break, etc.
General purpose scripts by the Wine Smatch Project
while_for_check.pl
- Checks for suspicious "while" and "for" loops (possible infinite loops).
Wine specific Smatch scripts
- crosscalls_WtoA.pl
- Checks for calls from Unicode to Ascii functions.
- file_handles.pl
- Checks for comparisons of file handles with NULL instead of INVALID_HANDLE_VALUE.
redundant_null_check.pl
- Checks for redundant NULL pointer checks before releasing the
pointer (HeapFree, RtlFreeHeap).
unfree-wine.pl
- Adaptation of smatch's unfree.pl: checks for unfreed memory.
wine_locks.pl
- Checks for correct release of a lot of simple wine locks.
More scripts to come.