diff options
author | Anna Zaks <ganna@apple.com> | 2012-02-17 22:35:31 +0000 |
---|---|---|
committer | Anna Zaks <ganna@apple.com> | 2012-02-17 22:35:31 +0000 |
commit | e56167e8f87acf87a9de3d383752e18a738cf056 (patch) | |
tree | e827d521532a4be201d622368da0d6db49ed829d /clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp | |
parent | 6348a810fe0d64f7ec99e31a97c1761c0e2d6f8f (diff) | |
download | llvm-e56167e8f87acf87a9de3d383752e18a738cf056.zip llvm-e56167e8f87acf87a9de3d383752e18a738cf056.tar.gz llvm-e56167e8f87acf87a9de3d383752e18a738cf056.tar.bz2 |
[analyzer] Fix another false positive in the Malloc Checker, by making
it aware of CString APIs that return the input parameter.
Malloc Checker needs to know how the 'strcpy' function is
evaluated. Introduce the dependency on CStringChecker for that.
CStringChecker knows all about these APIs.
Addresses radar://10864450
llvm-svn: 150846
Diffstat (limited to 'clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp')
-rw-r--r-- | clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp b/clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp index 5ca813bc..eab7e890 100644 --- a/clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp +++ b/clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp @@ -13,6 +13,7 @@ //===----------------------------------------------------------------------===// #include "ClangSACheckers.h" +#include "InterCheckerAPI.h" #include "clang/StaticAnalyzer/Core/Checker.h" #include "clang/StaticAnalyzer/Core/CheckerManager.h" #include "clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h" @@ -1924,3 +1925,7 @@ REGISTER_CHECKER(CStringNullArg) REGISTER_CHECKER(CStringOutOfBounds) REGISTER_CHECKER(CStringBufferOverlap) REGISTER_CHECKER(CStringNotNullTerm) + +void ento::registerCStringCheckerBasic(CheckerManager &Mgr) { + registerCStringNullArg(Mgr); +} |