clang
6.0.0
|
#include "clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h"
#include "clang/AST/DeclCXX.h"
#include "clang/AST/StmtCXX.h"
#include "clang/AST/ParentMap.h"
#include "clang/Basic/PrettyStackTrace.h"
#include "clang/StaticAnalyzer/Core/CheckerManager.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h"
Go to the source code of this file.
Functions | |
static SVal | makeZeroElementRegion (ProgramStateRef State, SVal LValue, QualType &Ty) |
Returns a region representing the first element of a (possibly multi-dimensional) array. More... | |
static bool | canHaveDirectConstructor (CFGElement Elem) |
Returns true if the initializer for can be a direct constructor. More... | |
|
static |
Returns true if the initializer for can be a direct constructor.
Definition at line 162 of file ExprEngineCXX.cpp.
References clang::CFGElement::getAs(), clang::ento::NodeBuilderContext::getBlock(), clang::ento::ExprEngine::getBuilderContext(), clang::CFGElement::getKind(), clang::ento::ExprEngine::getStmt(), clang::CFGElement::Initializer, and clang::CFGBlock::size().
|
static |
Returns a region representing the first element of a (possibly multi-dimensional) array.
On return, Ty
will be set to the base type of the array.
If the type is not an array type at all, the original value is returned.
Definition at line 93 of file ExprEngineCXX.cpp.
References clang::ASTContext::getAsArrayType(), clang::ento::SVal::getAsRegion(), clang::ento::SValBuilder::getContext(), clang::LocationContext::getCurrentStackFrame(), clang::ento::MemRegionManager::getCXXTempObjectRegion(), clang::ento::SValBuilder::getCXXThis(), clang::LocationContext::getDecl(), clang::CXXCtorInitializer::getIndirectMember(), clang::ento::ExplodedNode::getLocationContext(), clang::CXXCtorInitializer::getMember(), clang::ento::SValBuilder::getRegionManager(), clang::ento::ExplodedNode::getState(), clang::ento::ExprEngine::getSValBuilder(), clang::ValueDecl::getType(), clang::CXXCtorInitializer::isAnyMemberInitializer(), clang::CXXCtorInitializer::isIndirectMemberInitializer(), clang::ento::SValBuilder::makeZeroArrayIndex(), and State.