[PATCH] D54281: [clang-tidy] fix PR39583 - ignoring ParenCast for string-literals in pro-bounds-array-to-pointer-decay

Aaron Ballman via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu Nov 8 16:04:45 PST 2018


aaron.ballman added inline comments.


================
Comment at: clang-tidy/cppcoreguidelines/ProBoundsArrayToPointerDecayCheck.cpp:65
+          unless(isInsideOfRangeBeginEndStmt()),
+          unless(hasSourceExpression(ignoringParenCasts(stringLiteral()))))
           .bind("cast"),
----------------
JonasToth wrote:
> aaron.ballman wrote:
> > I think you want `ignoringParens()` instead, no?
> That doesn't seem to compile, it only applies to `QualType`. There is `ignoringParenCasts` and `ignoringParenImpCasts` that match on everything. Ignoring the imp-casts is not what we want.
Neither is ignoring the paren casts because that covers actual casts like reinterpret_cast. There is an `Expr::IgnoreParens()`, so I'm betting that the `ignoringParens()` matcher just needs an overload for `Expr`.


Repository:
  rCTE Clang Tools Extra

https://reviews.llvm.org/D54281





More information about the cfe-commits mailing list