diff options
author | Ted Kremenek <kremenek@apple.com> | 2012-02-21 00:46:29 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2012-02-21 00:46:29 +0000 |
commit | 7f9b1d963d4b7e2faff7305733e3453130b402fe (patch) | |
tree | c2f5e2571311d13023bda99d2f490fd87edffe6b /lib/StaticAnalyzer/Core/Environment.cpp | |
parent | ccc1b5eebc6ca8a904c58c0468b9a71483b7c7cf (diff) |
Have ScanReachableSymbols reported reachable regions. Fixes a false positive with nested array literals. <rdar://problem/10686586>
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151012 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/StaticAnalyzer/Core/Environment.cpp')
-rw-r--r-- | lib/StaticAnalyzer/Core/Environment.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/lib/StaticAnalyzer/Core/Environment.cpp b/lib/StaticAnalyzer/Core/Environment.cpp index 61701385eb..74f04ce5a5 100644 --- a/lib/StaticAnalyzer/Core/Environment.cpp +++ b/lib/StaticAnalyzer/Core/Environment.cpp @@ -139,7 +139,14 @@ class MarkLiveCallback : public SymbolVisitor { SymbolReaper &SymReaper; public: MarkLiveCallback(SymbolReaper &symreaper) : SymReaper(symreaper) {} - bool VisitSymbol(SymbolRef sym) { SymReaper.markLive(sym); return true; } + bool VisitSymbol(SymbolRef sym) { + SymReaper.markLive(sym); + return true; + } + bool VisitMemRegion(const MemRegion *R) { + SymReaper.markLive(R); + return true; + } }; } // end anonymous namespace |