clang API Documentation
#include "clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitor.h"
#include "clang/AST/Expr.h"
#include "clang/AST/ExprObjC.h"
#include "clang/StaticAnalyzer/Core/BugReporter/BugReporter.h"
#include "clang/StaticAnalyzer/Core/BugReporter/PathDiagnostic.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h"
#include "llvm/ADT/SmallString.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/Support/raw_ostream.h"
Go to the source code of this file.
Functions | |
static bool | isInitializationOfVar (const ExplodedNode *N, const VarRegion *VR) |
static const MemRegion * | getLocationRegionIfReference (const Expr *E, const ExplodedNode *N) |
static const Expr * | peelOffOuterExpr (const Expr *Ex, const ExplodedNode *N) |
static bool | isInStdNamespace (const Decl *D) |
static const MemRegion* getLocationRegionIfReference | ( | const Expr * | E, |
const ExplodedNode * | N | ||
) | [static] |
Definition at line 838 of file BugReporterVisitors.cpp.
References clang::ento::ExplodedNode::getLocationContext(), clang::ento::ProgramStateManager::getRegionManager(), clang::ento::ExplodedNode::getState(), and clang::ento::MemRegionManager::getVarRegion().
Referenced by clang::ento::bugreporter::trackNullOrUndefValue().
static bool isInitializationOfVar | ( | const ExplodedNode * | N, |
const VarRegion * | VR | ||
) | [static] |
Returns true if N
represents the DeclStmt declaring and initializing VR
.
Definition at line 420 of file BugReporterVisitors.cpp.
References clang::LocationContext::getCurrentStackFrame(), clang::ento::VarRegion::getDecl(), clang::ento::ExplodedNode::getLocationAs(), clang::ento::ExplodedNode::getLocationContext(), clang::ento::MemRegion::getMemorySpace(), clang::DeclStmt::getSingleDecl(), clang::ento::StackSpaceRegion::getStackFrame(), clang::VarDecl::hasLocalStorage(), clang::VarDecl::isStaticLocal(), and P.
Referenced by clang::ento::FindLastStoreBRVisitor::VisitNode().
static bool isInStdNamespace | ( | const Decl * | D | ) | [static] |
Definition at line 1501 of file BugReporterVisitors.cpp.
References clang::Decl::getDeclContext(), clang::DeclContext::getEnclosingNamespaceContext(), clang::DeclContext::getParent(), and clang::DeclContext::isStdNamespace().
Referenced by clang::ento::LikelyFalsePositiveSuppressionBRVisitor::getEndPath().
static const Expr* peelOffOuterExpr | ( | const Expr * | Ex, |
const ExplodedNode * | N | ||
) | [static] |
Definition at line 859 of file BugReporterVisitors.cpp.
References clang::ProgramPoint::getAs(), clang::ento::ExplodedNode::getFirstPred(), clang::ento::ExplodedNode::getLocation(), clang::CFGBlock::getTerminator(), clang::Expr::IgnoreParenCasts(), and clang::CFGBlock::succ_begin().
Referenced by clang::ento::bugreporter::trackNullOrUndefValue().