[clang-tidy] Add check to detect dangling references in value handlers.
authorSamuel Benzaquen <sbenza@google.com>
Tue, 29 Mar 2016 18:02:26 +0000 (18:02 +0000)
committerSamuel Benzaquen <sbenza@google.com>
Tue, 29 Mar 2016 18:02:26 +0000 (18:02 +0000)
commitb2ccba525738bdcf03ce7cb6ec87479cf91a6a18
tree9f12462067b3a5c633082d89846cf2509f3606a9
parent4fdc1f0a9412892e4990a961fdc610a94c2153b3
[clang-tidy] Add check to detect dangling references in value handlers.

Summary:
Add check misc-dangling-handle to detect dangling references in value
handlers like std::experimental::string_view.
It provides a configuration option to specify other handle types that
should also be checked.

Right now it detects:
 - Construction from temporaries.
 - Assignment from temporaries.
 - Return statements from temporaries or locals.
 - Insertion into containers from temporaries.

Reviewers: alexfh

Subscribers: cfe-commits

Differential Revision: http://reviews.llvm.org/D17811

llvm-svn: 264759
clang-tools-extra/clang-tidy/misc/CMakeLists.txt
clang-tools-extra/clang-tidy/misc/DanglingHandleCheck.cpp [new file with mode: 0644]
clang-tools-extra/clang-tidy/misc/DanglingHandleCheck.h [new file with mode: 0644]
clang-tools-extra/clang-tidy/misc/MiscTidyModule.cpp
clang-tools-extra/docs/clang-tidy/checks/list.rst
clang-tools-extra/docs/clang-tidy/checks/misc-dangling-handle.rst [new file with mode: 0644]
clang-tools-extra/test/clang-tidy/misc-dangling-handle.cpp [new file with mode: 0644]