aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/Driver/Tools.cpp3
-rw-r--r--lib/StaticAnalyzer/Checkers/Checkers.td14
2 files changed, 11 insertions, 6 deletions
diff --git a/lib/Driver/Tools.cpp b/lib/Driver/Tools.cpp
index 68439ced7b..271f02d894 100644
--- a/lib/Driver/Tools.cpp
+++ b/lib/Driver/Tools.cpp
@@ -1011,7 +1011,8 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA,
if (getToolChain().getTriple().getVendor() == llvm::Triple::Apple)
CmdArgs.push_back("-analyzer-checker=macosx");
- CmdArgs.push_back("-analyzer-checker=DeadStores");
+ CmdArgs.push_back("-analyzer-checker=deadcode.DeadStores");
+ CmdArgs.push_back("-analyzer-checker=deadcode.IdempotentOperations");
// Checks to perform for Objective-C/Objective-C++.
if (types::isObjC(InputType)) {
diff --git a/lib/StaticAnalyzer/Checkers/Checkers.td b/lib/StaticAnalyzer/Checkers/Checkers.td
index ed9d144153..33611dae83 100644
--- a/lib/StaticAnalyzer/Checkers/Checkers.td
+++ b/lib/StaticAnalyzer/Checkers/Checkers.td
@@ -17,6 +17,7 @@ def Core : Package<"core">;
def Cocoa : Package<"cocoa">;
def Unix : Package<"unix">;
def MacOSX : Package<"macosx">;
+def DeadCode : Package<"deadcode">;
def CoreExperimental : Package<"experimental">,
InPackage<Core>, Hidden;
@@ -141,10 +142,18 @@ def StackAddrEscapeChecker : Checker<"StackAddrEscape">,
} // end "core"
+let ParentPackage = DeadCode in {
+
def DeadStoresChecker : Checker<"DeadStores">,
HelpText<"Check for values stored to a variables that are never read afterwards">,
DescFile<"DeadStoresChecker.cpp">;
+def IdempotentOperationChecker : Checker<"IdempotentOperations">,
+ HelpText<"Warn about idempotent operations">,
+ DescFile<"IdempotentOperationChecker.cpp">;
+
+} // end DeadCode
+
def UnixAPIChecker : Checker<"API">,
InPackage<Unix>,
HelpText<"Check calls to various UNIX/Posix functions">,
@@ -228,11 +237,6 @@ def UnreachableCodeChecker : Checker<"UnreachableCode">,
DescFile<"UnreachableCodeChecker.cpp">,
Hidden; // Must be specified explicitly in order to run.
-def IdempotentOperationChecker : Checker<"IdempotentOps">,
- InPackage<CoreExperimental>,
- HelpText<"Warn about idempotent operations">,
- DescFile<"IdempotentOperationChecker.cpp">;
-
def CastToStructChecker : Checker<"CastToStruct">,
InPackage<CoreExperimental>,
HelpText<"Check for cast from non-struct pointer to struct pointer">,