diff options
author | Anna Zaks <ganna@apple.com> | 2011-08-05 23:47:13 +0000 |
---|---|---|
committer | Anna Zaks <ganna@apple.com> | 2011-08-05 23:47:13 +0000 |
commit | 3f10e32b15e54f507aed90cb72d73c7acaa500bb (patch) | |
tree | 16a3fd7c7b7e52b6ca701a6088828c13dd54163f | |
parent | 270ba59c4111c9e9d040cf3b95f1f3e0a8440dff (diff) |
Static Analyzer: Add a convinience API. Add comment.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@137000 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h | 4 | ||||
-rw-r--r-- | include/clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h | 3 |
2 files changed, 7 insertions, 0 deletions
diff --git a/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h b/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h index 4429c6b2a7..27c52c3b12 100644 --- a/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h +++ b/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h @@ -90,6 +90,10 @@ public: return Eng.getSValBuilder(); } + SymbolManager &getSymbolManager() { + return getSValBuilder().getSymbolManager(); + } + ExplodedNode *generateNode(bool autoTransition = true) { assert(statement && "Only transitions with statements currently supported"); ExplodedNode *N = generateNodeImpl(statement, getState(), false, diff --git a/include/clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h b/include/clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h index 66ecba7dcf..42113167a1 100644 --- a/include/clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h +++ b/include/clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h @@ -389,6 +389,9 @@ public: const SymbolExtent *getExtentSymbol(const SubRegion *R); + /// Creates a metadata symbol associated with a specific region. + /// VisitCount can be used to differentiate regions corresponding to + /// different loop iterations, thus, making the symbol path-dependent. const SymbolMetadata* getMetadataSymbol(const MemRegion* R, const Stmt* S, QualType T, unsigned VisitCount, const void* SymbolTag = 0); |