[PATCH] D32902: [Analyzer] Iterator Checker - Part 7: Support for push and pop operations

Balogh, Ádám via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri May 5 05:29:43 PDT 2017


baloghadamsoftware created this revision.
Herald added a subscriber: mgorny.

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).


https://reviews.llvm.org/D32902

Files:
  include/clang/StaticAnalyzer/Checkers/Checkers.td
  lib/StaticAnalyzer/Checkers/CMakeLists.txt
  lib/StaticAnalyzer/Checkers/IteratorChecker.cpp
  lib/StaticAnalyzer/Checkers/IteratorPastEndChecker.cpp
  test/Analysis/Inputs/system-header-simulator-cxx.h
  test/Analysis/diagnostics/explicit-suppression.cpp
  test/Analysis/invalidated-iterator.cpp
  test/Analysis/iterator-past-end.cpp
  test/Analysis/iterator-range.cpp
  test/Analysis/mismatched-iterator.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D32902.97940.patch
Type: text/x-patch
Size: 146301 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20170505/3f0f6108/attachment-0001.bin>


More information about the cfe-commits mailing list