summaryrefslogtreecommitdiffstats
path: root/clang/lib/Driver
diff options
context:
space:
mode:
authorAnton Yartsev <anton.yartsev@gmail.com>2013-03-25 01:35:45 +0000
committerAnton Yartsev <anton.yartsev@gmail.com>2013-03-25 01:35:45 +0000
commit13df03624bd21878c32e0d84b71b55bc1298cbcc (patch)
tree510b6a2625e3c59c9958c30ae210cf1a7eb7b74c /clang/lib/Driver
parent8ef2419d60dd960f50a72c4cbd0416580ace1c79 (diff)
downloadbcm5719-llvm-13df03624bd21878c32e0d84b71b55bc1298cbcc.tar.gz
bcm5719-llvm-13df03624bd21878c32e0d84b71b55bc1298cbcc.zip
[analyzer] Adds cplusplus.NewDelete checker that check for memory leaks, double free, and use-after-free problems of memory managed by new/delete.
llvm-svn: 177849
Diffstat (limited to 'clang/lib/Driver')
-rw-r--r--clang/lib/Driver/Tools.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/clang/lib/Driver/Tools.cpp b/clang/lib/Driver/Tools.cpp
index 2581ae36f71..bff8848db0e 100644
--- a/clang/lib/Driver/Tools.cpp
+++ b/clang/lib/Driver/Tools.cpp
@@ -1911,6 +1911,9 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA,
CmdArgs.push_back("-analyzer-checker=deadcode");
+ if (types::isCXX(Inputs[0].getType()))
+ CmdArgs.push_back("-analyzer-checker=cplusplus");
+
// Enable the following experimental checkers for testing.
CmdArgs.push_back("-analyzer-checker=security.insecureAPI.UncheckedReturn");
CmdArgs.push_back("-analyzer-checker=security.insecureAPI.getpw");
OpenPOWER on IntegriCloud