]> granicus.if.org Git - clang/commit
[Analyzer] Iterator Checker - Part 7: Support for push and pop operations
authorAdam Balogh <adam.balogh@ericsson.com>
Mon, 10 Sep 2018 09:06:31 +0000 (09:06 +0000)
committerAdam Balogh <adam.balogh@ericsson.com>
Mon, 10 Sep 2018 09:06:31 +0000 (09:06 +0000)
commit399a4432e1ddf3836fa195fefcb77927f32478a2
tree1cb190d025e88bfc119fe0ae88f5948db4d44e23
parente171ae48585105d35b89c09fe5d951cf3e877b3f
[Analyzer] Iterator Checker - Part 7: Support for push and pop operations

This patch adds support for the following operations in the iterator checkers: push_back, push_front, emplace_back, emplace_front, pop_back and pop_front. This affects iterator range checks (range is extended after push and emplace and reduced after pop operations) and invalidation checks (according to the standard).

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

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@341793 91177308-0d34-0410-b5e6-96231b3b80d8
lib/StaticAnalyzer/Checkers/IteratorChecker.cpp
test/Analysis/Inputs/system-header-simulator-cxx.h
test/Analysis/diagnostics/explicit-suppression.cpp
test/Analysis/invalidated-iterator.cpp
test/Analysis/iterator-range.cpp