[Analyzer] Iterator Checker - Part 8: Support for assign, clear, insert, emplace...
authorAdam Balogh <adam.balogh@ericsson.com>
Mon, 10 Sep 2018 09:07:47 +0000 (09:07 +0000)
committerAdam Balogh <adam.balogh@ericsson.com>
Mon, 10 Sep 2018 09:07:47 +0000 (09:07 +0000)
commit2e7cb34d0f3024e107e3c4f56e7ea62e4b8b7746
treed4132bdcd396097c974fb4a2bf9caeccfee25b7b
parent9a48ba6b4aa3d2e94466648a0adf9305571ade60
[Analyzer] Iterator Checker - Part 8: Support for assign, clear, insert, emplace and erase operations

This patch adds support for the following operations in the iterator checkers: assign, clear, insert, insert_after, emplace, emplace_after, erase and erase_after. This affects mismatched iterator checks ("this" and parameter must match) and invalidation checks (according to the standard).

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

llvm-svn: 341794
clang/lib/StaticAnalyzer/Checkers/IteratorChecker.cpp
clang/test/Analysis/Inputs/system-header-simulator-cxx.h
clang/test/Analysis/diagnostics/explicit-suppression.cpp
clang/test/Analysis/invalidated-iterator.cpp