2015-09-11 12:33:29 -04:00
|
|
|
#!/usr/bin/env bash
|
|
|
|
|
2016-10-18 17:05:20 -04:00
|
|
|
set -o errexit
|
|
|
|
set -o pipefail
|
|
|
|
set -o nounset
|
|
|
|
|
2015-09-11 12:33:29 -04:00
|
|
|
# Runs the Static Analyzer on the code base.
|
|
|
|
# This is a wrapper intended to be used with like this:
|
|
|
|
# 1/ analyze cmake ..
|
|
|
|
# 2/ analyze cmake --build .
|
|
|
|
|
2016-10-18 17:05:20 -04:00
|
|
|
|
2015-09-11 12:33:29 -04:00
|
|
|
exec scan-build -analyze-headers -no-failure-reports --keep-going --status-bugs \
|
|
|
|
-enable-checker alpha.core.BoolAssignment \
|
|
|
|
-enable-checker alpha.core.IdenticalExpr \
|
|
|
|
-enable-checker alpha.core.TestAfterDivZero \
|
|
|
|
-enable-checker alpha.deadcode.UnreachableCode \
|
|
|
|
-enable-checker alpha.security.ArrayBoundV2 \
|
|
|
|
-enable-checker alpha.security.MallocOverflow \
|
|
|
|
-enable-checker alpha.security.ReturnPtrRange \
|
|
|
|
-enable-checker security.FloatLoopCounter \
|
|
|
|
-enable-checker security.insecureAPI.rand \
|
|
|
|
-enable-checker security.insecureAPI.strcpy \
|
|
|
|
"${@}"
|