]> granicus.if.org Git - clang/commit
[analyzer] Add MisusedMovedObjectChecker for detecting use-after-move errors.
authorArtem Dergachev <artem.dergachev@gmail.com>
Fri, 24 Mar 2017 09:52:30 +0000 (09:52 +0000)
committerArtem Dergachev <artem.dergachev@gmail.com>
Fri, 24 Mar 2017 09:52:30 +0000 (09:52 +0000)
commit03276d317517d21eeb46b1712195492ee27d49ad
tree80d237fa86f1b510b96467572381197695926fa3
parent456084416f3bc3d95468c326dacc2f6ff77ae231
[analyzer] Add MisusedMovedObjectChecker for detecting use-after-move errors.

The checker currently warns on copying, moving, or calling methods on an object
that was recently std::move'd from. It understands a set of "state reset"
methods that bring a moved-from object back to a well-specified state.

Patch by Peter Szecsi!

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

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@298698 91177308-0d34-0410-b5e6-96231b3b80d8
include/clang/StaticAnalyzer/Checkers/Checkers.td
lib/StaticAnalyzer/Checkers/CMakeLists.txt
lib/StaticAnalyzer/Checkers/MisusedMovedObjectChecker.cpp [new file with mode: 0644]
test/Analysis/MisusedMovedObject.cpp [new file with mode: 0644]