diff options
author | Ted Kremenek <kremenek@apple.com> | 2009-11-04 04:24:16 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2009-11-04 04:24:16 +0000 |
commit | b107c4b7efb907d75620cd3c17f82fe27dc5b745 (patch) | |
tree | b46284c1ca60ea3f80820a5b08e348e538b3f52a /lib/Analysis/GRExprEngineInternalChecks.cpp | |
parent | bf960cb0ff08fd766723a059e012daa596f5e918 (diff) |
Catch uses of undefined values when they are used in assignment, thus catching such bugs closer to the source.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86003 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Analysis/GRExprEngineInternalChecks.cpp')
-rw-r--r-- | lib/Analysis/GRExprEngineInternalChecks.cpp | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/lib/Analysis/GRExprEngineInternalChecks.cpp b/lib/Analysis/GRExprEngineInternalChecks.cpp index e0112ee984..695f0b02e5 100644 --- a/lib/Analysis/GRExprEngineInternalChecks.cpp +++ b/lib/Analysis/GRExprEngineInternalChecks.cpp @@ -19,6 +19,7 @@ #include "clang/Analysis/PathSensitive/Checkers/DivZeroChecker.h" #include "clang/Analysis/PathSensitive/Checkers/BadCallChecker.h" #include "clang/Analysis/PathSensitive/Checkers/UndefinedArgChecker.h" +#include "clang/Analysis/PathSensitive/Checkers/UndefinedAssignmentChecker.h" #include "clang/Analysis/PathSensitive/Checkers/AttrNonNullChecker.h" #include "clang/Analysis/PathSensitive/Checkers/VLASizeChecker.h" #include "clang/Analysis/PathDiagnostic.h" @@ -476,12 +477,13 @@ void GRExprEngine::RegisterInternalChecks() { // their associated BugType will get registered with the BugReporter // automatically. Note that the check itself is owned by the GRExprEngine // object. - registerCheck<AttrNonNullChecker>(new AttrNonNullChecker()); - registerCheck<UndefinedArgChecker>(new UndefinedArgChecker()); - registerCheck<BadCallChecker>(new BadCallChecker()); - registerCheck<DivZeroChecker>(new DivZeroChecker()); - registerCheck<UndefDerefChecker>(new UndefDerefChecker()); - registerCheck<NullDerefChecker>(new NullDerefChecker()); - registerCheck<UndefSizedVLAChecker>(new UndefSizedVLAChecker()); - registerCheck<ZeroSizedVLAChecker>(new ZeroSizedVLAChecker()); + registerCheck(new AttrNonNullChecker()); + registerCheck(new UndefinedArgChecker()); + registerCheck(new UndefinedAssignmentChecker()); + registerCheck(new BadCallChecker()); + registerCheck(new DivZeroChecker()); + registerCheck(new UndefDerefChecker()); + registerCheck(new NullDerefChecker()); + registerCheck(new UndefSizedVLAChecker()); + registerCheck(new ZeroSizedVLAChecker()); } |