2015-10-06 21:31:00 +08:00
|
|
|
set(LLVM_LINK_COMPONENTS support)
|
|
|
|
|
|
|
|
add_clang_library(clangTidyCppCoreGuidelinesModule
|
|
|
|
CppCoreGuidelinesTidyModule.cpp
|
2015-10-27 05:56:02 +08:00
|
|
|
ProBoundsArrayToPointerDecayCheck.cpp
|
2015-10-13 05:53:19 +08:00
|
|
|
ProBoundsPointerArithmeticCheck.cpp
|
2015-10-07 20:24:57 +08:00
|
|
|
ProTypeConstCastCheck.cpp
|
[clang-tidy] add new check cppcoreguidelines-pro-type-cstyle-cast
Summary:
This check flags all use of c-style casts that perform a static_cast
downcast, const_cast, or reinterpret_cast.
Use of these casts can violate type safety and cause the program to
access a
variable that is actually of type X to be accessed as if it were of an
unrelated type Z. Note that a C-style (T)expression cast means to
perform
the first of the following that is possible: a const_cast, a
static_cast, a
static_cast followed by a const_cast, a reinterpret_cast, or a
reinterpret_cast followed by a const_cast. This rule bans (T)expression
only when used to perform an unsafe cast.
This rule is part of the "Type safety" profile of the C++ Core
Guidelines, see
https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#-type4-dont-use-c-style-texpression-casts-that-would-perform-a-static_cast-downcast-const_cast-or-reinterpret_cast.
Reviewers: alexfh, sbenza, bkramer, aaron.ballman
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D14096
llvm-svn: 252425
2015-11-09 05:10:39 +08:00
|
|
|
ProTypeCstyleCastCheck.cpp
|
2015-10-06 21:31:00 +08:00
|
|
|
ProTypeReinterpretCastCheck.cpp
|
2015-10-13 04:46:53 +08:00
|
|
|
ProTypeStaticCastDowncastCheck.cpp
|
2015-10-17 02:46:30 +08:00
|
|
|
ProTypeUnionAccessCheck.cpp
|
2015-10-22 04:09:02 +08:00
|
|
|
ProTypeVarargCheck.cpp
|
2015-10-06 21:31:00 +08:00
|
|
|
|
|
|
|
LINK_LIBS
|
|
|
|
clangAST
|
|
|
|
clangASTMatchers
|
|
|
|
clangBasic
|
|
|
|
clangLex
|
|
|
|
clangTidy
|
2015-10-13 23:42:06 +08:00
|
|
|
clangTidyMiscModule
|
2015-10-06 21:31:00 +08:00
|
|
|
clangTidyUtils
|
|
|
|
clangTooling
|
|
|
|
)
|