[clang-tools-extra] [clang-tidy] Add new performance-use-starts-ends-with check (PR #72385)

Piotr Zegar via cfe-commits cfe-commits at lists.llvm.org
Thu Nov 16 00:14:42 PST 2023


================
@@ -31,6 +30,10 @@ class StringFindStartswithCheck : public ClangTidyCheck {
   void registerMatchers(ast_matchers::MatchFinder *Finder) override;
   void check(const ast_matchers::MatchFinder::MatchResult &Result) override;
   void storeOptions(ClangTidyOptions::OptionMap &Opts) override;
+  bool isLanguageVersionSupported(const LangOptions &LangOpts) const override {
+    // Prefer performance-use-starts-ends-with when C++20 is available.
+    return LangOpts.CPlusPlus && !LangOpts.CPlusPlus20;
+  }
 
----------------
PiotrZSL wrote:

Use TK_IgnoreUnlessSpelledInSource to exclude things like template instances and  implicit code.

https://github.com/llvm/llvm-project/pull/72385


More information about the cfe-commits mailing list