Benjamin Kramer
f8c99297d3
[tidy] Move private ast matchers into anonymous namespaces to avoid ODR conflicts.
...
No functionality change intended.
llvm-svn: 325467
2018-02-18 19:02:35 +00:00
Aaron Ballman
73f283e6fc
Reverting r298421 due to using a header that's unavailable to all systems and some other post-commit review feedback.
...
llvm-svn: 298470
2017-03-22 01:08:54 +00:00
Aaron Ballman
163e7166d7
Prevent cppcoreguidelines-pro-bounds-array-to-pointer-decay from diagnosing array to pointer decay stemming from system macros.
...
Patch by Breno Rodrigues Guimaraes.
llvm-svn: 298421
2017-03-21 19:01:17 +00:00
Etienne Bergeron
456177b98f
[clang-tidy] Cleaning namespaces to be more consistant across checkers.
...
Summary:
The goal of the patch is to bring checkers in their appropriate namespace.
This path doesn't change any behavior.
Reviewers: alexfh
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D19811
llvm-svn: 268264
2016-05-02 18:00:29 +00:00
Benjamin Kramer
74e4d55dcc
[clang-tidy] Update check for API change in r263895.
...
for range stmts now have split begin and ends, just apply OR to the
condition. Should unbreak the build.
llvm-svn: 263900
2016-03-20 14:24:49 +00:00
Matthias Gehre
4722f1921a
Fix bug 25362 "cppcoreguidelines-pro-bounds-array-to-pointer-decay does not consider const"
...
Summary:
The current matcher is
implicitCastExpr(unless(hasParent(explicitCastExpr())))
but the AST in the bug is
`-CXXStaticCastExpr 0x2bb64f8 <col:21, col:55> 'void *const *'
static_cast<void *const *> <NoOp>
`-ImplicitCastExpr 0x2bb64e0 <col:47> 'void *const *' <NoOp>
`-ImplicitCastExpr 0x2bb64c8 <col:47> 'void **'
<ArrayToPointerDecay>
`-DeclRefExpr 0x2bb6458 <col:47> 'void *[2]' lvalue Var
0x2bb59d0 'addrlist' 'void *[2]'
i.e. an ImplicitCastExpr (const cast) between decay and explicit cast.
Reviewers: alexfh, sbenza, bkramer, aaron.ballman
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D14517
llvm-svn: 253399
2015-11-17 23:35:39 +00:00
Matthias Gehre
f33319699d
[clang-tidy] Add new check cppcoreguidelines-pro-bounds-array-to-pointer-decay
...
Summary:
This check flags all array to pointer decays.
Pointers should not be used as arrays. array_view is a bounds-checked,
safe alternative to using pointers to access arrays.
This rule is part of the "Bounds safety" profile of the C++ Core
Guidelines, see
https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#-bounds3-no-array-to-pointer-decay
Reviewers: alexfh, sbenza, bkramer, aaron.ballman
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D13640
llvm-svn: 251358
2015-10-26 21:56:02 +00:00