aboutsummaryrefslogtreecommitdiffstats
path: root/cc/tidy.go
diff options
context:
space:
mode:
authorGeorge Burgess IV <gbiv@google.com>2017-05-03 18:13:08 -0700
committerGeorge Burgess IV <gbiv@google.com>2017-05-04 01:19:02 +0000
commit561a3fe4af34038b8b4ab4293273b84fbfca13b3 (patch)
tree6631ada2a15a8446e67b538b4da7f3c16bf0cbf3 /cc/tidy.go
parent0e409a2810f360595fe741ab33792e618caec378 (diff)
downloadbuild_soong-561a3fe4af34038b8b4ab4293273b84fbfca13b3.tar.gz
build_soong-561a3fe4af34038b8b4ab4293273b84fbfca13b3.tar.bz2
build_soong-561a3fe4af34038b8b4ab4293273b84fbfca13b3.zip
soong: add __clang_analyzer__ to clang-tidy
We have code that acts slightly differently when the static analyzer is running, so that it can produce more accurate diagnostics (e.g. less false positives). It uses __clang_analyzer__ to detect the static analyzer. When the static analyzer is run via clang-tidy, __clang_analyzer__ doesn't get defined. Bug: None Test: WITH_TIDY=1 m. clang-tidy now acts as expected in code made for the static analyzer Change-Id: I460ff410640524633c0a60b71d34927d17e1ed98
Diffstat (limited to 'cc/tidy.go')
-rw-r--r--cc/tidy.go4
1 files changed, 4 insertions, 0 deletions
diff --git a/cc/tidy.go b/cc/tidy.go
index 9dcc946a..c31f5aea 100644
--- a/cc/tidy.go
+++ b/cc/tidy.go
@@ -77,6 +77,10 @@ func (tidy *tidyFeature) flags(ctx ModuleContext, flags Flags) Flags {
flags.TidyFlags = append(flags.TidyFlags, headerFilter)
}
+ // We might be using the static analyzer through clang tidy.
+ // https://bugs.llvm.org/show_bug.cgi?id=32914
+ flags.TidyFlags = append(flags.TidyFlags, "-extra-arg-before=-D__clang_analyzer__")
+
tidyChecks := "-checks="
if checks := ctx.AConfig().TidyChecks(); len(checks) > 0 {
tidyChecks += checks