clang API Documentation
#include "ClangSACheckers.h"
#include "clang/AST/CharUnits.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/ExprEngine.h"
#include "llvm/ADT/SmallString.h"
#include "llvm/Support/raw_ostream.h"
Go to the source code of this file.
Functions | |
static SVal | computeExtentBegin (SValBuilder &svalBuilder, const MemRegion *region) |
static SVal | getValue (SVal val, SValBuilder &svalBuilder) |
static SVal | scaleValue (ProgramStateRef state, NonLoc baseVal, CharUnits scaling, SValBuilder &sb) |
static SVal | addValue (ProgramStateRef state, SVal x, SVal y, SValBuilder &svalBuilder) |
static SVal addValue | ( | ProgramStateRef | state, |
SVal | x, | ||
SVal | y, | ||
SValBuilder & | svalBuilder | ||
) | [static] |
Definition at line 241 of file ArrayBoundCheckerV2.cpp.
References clang::BO_Add, clang::ento::SVal::castAs(), clang::ento::SValBuilder::evalBinOpNN(), clang::ento::SValBuilder::getArrayIndexType(), and clang::ento::SVal::isUnknownOrUndef().
static SVal computeExtentBegin | ( | SValBuilder & | svalBuilder, |
const MemRegion * | region | ||
) | [static] |
Definition at line 68 of file ArrayBoundCheckerV2.cpp.
References clang::ento::MemRegion::ElementRegionKind, clang::ento::MemRegion::getKind(), clang::ento::SValBuilder::makeZeroArrayIndex(), and clang::ento::MemRegion::SymbolicRegionKind.
static SVal getValue | ( | SVal | val, |
SValBuilder & | svalBuilder | ||
) | [inline, static] |
Definition at line 225 of file ArrayBoundCheckerV2.cpp.
References clang::ento::SVal::getAs(), and clang::ento::SValBuilder::makeArrayIndex().
Referenced by clang::ento::SimpleConstraintManager::assumeAux(), clang::ento::nonloc::CompoundVal::begin(), clang::ento::Loc::dumpToStream(), clang::CodeGen::CodeGenFunction::EmitAArch64BuiltinExpr(), clang::ento::nonloc::CompoundVal::end(), clang::ento::nonloc::ConcreteInt::evalBinOp(), clang::ento::loc::ConcreteInt::evalBinOp(), clang::ento::nonloc::ConcreteInt::evalComplement(), clang::ento::nonloc::ConcreteInt::evalMinus(), clang::ento::StoreManager::getLValueElement(), clang::AnalyzerOptions::getOptionAsInteger(), clang::threadSafety::getSourceLiteralString(), clang::ento::ExprEngine::processSwitch(), and clang::ento::ExprEngine::VisitUnaryOperator().
static SVal scaleValue | ( | ProgramStateRef | state, |
NonLoc | baseVal, | ||
CharUnits | scaling, | ||
SValBuilder & | sb | ||
) | [inline, static] |
Definition at line 231 of file ArrayBoundCheckerV2.cpp.
References clang::BO_Mul, clang::ento::SValBuilder::evalBinOpNN(), clang::ento::SValBuilder::getArrayIndexType(), clang::CharUnits::getQuantity(), and clang::ento::SValBuilder::makeArrayIndex().