clang
10.0.0git
|
A utility class that visits the reachable symbols using a custom SymbolVisitor. More...
#include "clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h"
Public Member Functions | |
ScanReachableSymbols (ProgramStateRef st, SymbolVisitor &v) | |
bool | scan (nonloc::LazyCompoundVal val) |
bool | scan (nonloc::CompoundVal val) |
bool | scan (SVal val) |
bool | scan (const MemRegion *R) |
bool | scan (const SymExpr *sym) |
A utility class that visits the reachable symbols using a custom SymbolVisitor.
Terminates recursive traversal when the visitor function returns false.
Definition at line 858 of file ProgramState.h.
|
inline |
Definition at line 865 of file ProgramState.h.
bool ScanReachableSymbols::scan | ( | nonloc::LazyCompoundVal | val | ) |
Definition at line 528 of file ProgramState.cpp.
References clang::ento::MemRegion::getBaseRegion(), clang::ento::nonloc::LazyCompoundVal::getCVData(), clang::ento::nonloc::LazyCompoundVal::getRegion(), clang::ento::nonloc::LazyCompoundVal::getStore(), clang::ento::StoreManager::scanReachableSymbols(), and clang::CodeGen::state.
Referenced by clang::ento::EnvironmentManager::removeDeadBindings().
bool ScanReachableSymbols::scan | ( | nonloc::CompoundVal | val | ) |
Definition at line 541 of file ProgramState.cpp.
References clang::ento::nonloc::CompoundVal::begin(), and clang::ento::nonloc::CompoundVal::end().
Definition at line 564 of file ProgramState.cpp.
References clang::ento::SVal::getAs(), clang::ento::SVal::getAsSymbol(), clang::ento::SVal::getAsSymbolicExpression(), and X.
Definition at line 587 of file ProgramState.cpp.
References clang::ento::BlockDataRegion::referenced_vars_iterator::getCapturedRegion(), clang::ento::StoreManager::scanReachableSymbols(), and clang::CodeGen::state.
Definition at line 549 of file ProgramState.cpp.
References clang::if(), clang::ento::SymExpr::symbol_begin(), and clang::ento::SymExpr::symbol_end().