[Analyzer] Mark `SymbolData` parts of iterator position as live in program state...
authorAdam Balogh <adam.balogh@ericsson.com>
Mon, 16 Jul 2018 09:27:27 +0000 (09:27 +0000)
committerAdam Balogh <adam.balogh@ericsson.com>
Mon, 16 Jul 2018 09:27:27 +0000 (09:27 +0000)
commit0a7592b5e248ca592620e2a5307d95093dc878ef
tree423b1a81aa776340ad72d8768d9301bdf0d98cb8
parent0a75de4bfe51ea27465123965f02caa6bd00c197
[Analyzer] Mark `SymbolData` parts of iterator position as live in program state maps

Marking a symbolic expression as live is non-recursive. In our checkers we
either use conjured symbols or conjured symbols plus/minus integers to
represent abstract position of iterators, so in this latter case we also
must mark the `SymbolData` part of these symbolic expressions as live to
prevent them from getting reaped.

Differential Revision: https://reviews.llvm.org/D48764

llvm-svn: 337151
clang/lib/StaticAnalyzer/Checkers/IteratorChecker.cpp