clang
3.9.0
|
#include "ClangSACheckers.h"
#include "clang/StaticAnalyzer/Core/BugReporter/BugType.h"
#include "clang/StaticAnalyzer/Core/Checker.h"
#include "clang/StaticAnalyzer/Core/CheckerManager.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/Support/Path.h"
Go to the source code of this file.
Macros | |
#define | REGISTER_CHECKER(name, trackingRequired) |
Enumerations | |
enum | Nullability : char |
enum | ErrorKind : int |
#define REGISTER_CHECKER | ( | name, | |
trackingRequired | |||
) |
Definition at line 1211 of file NullabilityChecker.cpp.
|
strong |
Definition at line 85 of file NullabilityChecker.cpp.
|
strong |
Definition at line 49 of file NullabilityChecker.cpp.
|
static |
Definition at line 429 of file NullabilityChecker.cpp.
References clang::ento::CheckerContext::addTransition(), checkParamsForPreconditionViolation(), checkSelfIvarsForInvariantViolation(), clang::LocationContext::getDecl(), clang::ento::CheckerContext::getLocationContext(), and clang::ento::ExplodedNode::isSink().
|
static |
Definition at line 382 of file NullabilityChecker.cpp.
References checkValueAtLValForInvariantViolation().
Referenced by checkInvariantViolation().
|
static |
Definition at line 399 of file NullabilityChecker.cpp.
References checkValueAtLValForInvariantViolation(), clang::LocationContext::getDecl(), clang::ObjCObjectPointerType::getInterfaceDecl(), clang::LocationContext::getSelfDecl(), clang::ValueDecl::getType(), and clang::ObjCInterfaceDecl::ivars().
Referenced by checkInvariantViolation().
|
static |
Returns true when the value stored at the given location is null and the passed in type is nonnnull.
Definition at line 361 of file NullabilityChecker.cpp.
References clang::ento::SVal::getAs(), getNullabilityAnnotation(), and getNullConstraint().
Referenced by checkParamsForPreconditionViolation(), and checkSelfIvarsForInvariantViolation().
|
static |
Definition at line 348 of file NullabilityChecker.cpp.
References clang::AttributedType::attr_nonnull, clang::AttributedType::attr_nullable, clang::Type::getAs(), clang::Nullable, and clang::Unspecified.
Referenced by checkValueAtLValForInvariantViolation().
|
static |
Definition at line 278 of file NullabilityChecker.cpp.
References clang::ento::ConditionTruthVal::isConstrainedFalse(), clang::ento::ConditionTruthVal::isConstrainedTrue(), and clang::prec::Unknown.
Referenced by checkValueAtLValForInvariantViolation(), and getReceiverNullability().
|
static |
Definition at line 810 of file NullabilityChecker.cpp.
References clang::ento::SVal::getAs(), getNullConstraint(), clang::ObjCMethodCall::getReceiverSVal(), clang::ObjCMethodCall::isReceiverSelfOrSuper(), and clang::Unspecified.
|
static |
Returns true if.
S | is a DeclStmt for a local variable that ObjC automated reference counting initialized with zero. |
Definition at line 1038 of file NullabilityChecker.cpp.
References clang::ento::CheckerContext::getASTContext(), clang::ASTContext::getLangOpts(), and S.
Find the outermost subexpression of E that is not an implicit cast.
This looks through the implicit casts to _Nonnull that ARC adds to return expressions of ObjC types when the return type of the function or method is non-null but the express is not.
Definition at line 538 of file NullabilityChecker.cpp.
References E.
For a given statement performing a bind, attempt to syntactically match the expression resulting in the bound value.
Definition at line 1014 of file NullabilityChecker.cpp.
REGISTER_MAP_WITH_PROGRAMSTATE | ( | NullabilityMap | , |
const MemRegion * | , | ||
NullabilityState | |||
) |
Definition at line 247 of file NullabilityChecker.cpp.