https://github.com/nicovank created 
https://github.com/llvm/llvm-project/pull/89140

Run `modernize-use-starts-ends-with` on llvm-project. Two instances are 
flagged, minor readability improvements, extremely minor performance 
improvements.

```
python3 clang-tools-extra/clang-tidy/tool/run-clang-tidy.py \
    -clang-tidy-binary="build/bin/clang-tidy" \
    -clang-apply-replacements-binary="build/bin/clang-apply-replacements" \
    -checks="-*,modernize-use-starts-ends-with" \
    -header-filter=".*" \
    -fix -format
```

I am working on some additions to this check, but they don't seem to flag any 
additional cases anyway.

>From 4f28eccd28878683c75f17e0114d1b3b2380190c Mon Sep 17 00:00:00 2001
From: Nicolas van Kempen <nvank...@gmail.com>
Date: Wed, 17 Apr 2024 14:27:42 -0400
Subject: [PATCH] Apply modernize-use-starts-ends-with on llvm-project

---
 clang-tools-extra/clang-doc/Representation.cpp   | 4 ++--
 llvm/unittests/Support/VirtualFileSystemTest.cpp | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/clang-tools-extra/clang-doc/Representation.cpp 
b/clang-tools-extra/clang-doc/Representation.cpp
index 84233c36e15d98..2afff2929cf79c 100644
--- a/clang-tools-extra/clang-doc/Representation.cpp
+++ b/clang-tools-extra/clang-doc/Representation.cpp
@@ -380,8 +380,8 @@ ClangDocContext::ClangDocContext(tooling::ExecutionContext 
*ECtx,
   this->SourceRoot = std::string(SourceRootDir);
   if (!RepositoryUrl.empty()) {
     this->RepositoryUrl = std::string(RepositoryUrl);
-    if (!RepositoryUrl.empty() && RepositoryUrl.find("http://";) != 0 &&
-        RepositoryUrl.find("https://";) != 0)
+    if (!RepositoryUrl.empty() && !RepositoryUrl.starts_with("http://";) &&
+        !RepositoryUrl.starts_with("https://";))
       this->RepositoryUrl->insert(0, "https://";);
   }
 }
diff --git a/llvm/unittests/Support/VirtualFileSystemTest.cpp 
b/llvm/unittests/Support/VirtualFileSystemTest.cpp
index e9b4ac3d92e1dd..e9fd9671ea6ab5 100644
--- a/llvm/unittests/Support/VirtualFileSystemTest.cpp
+++ b/llvm/unittests/Support/VirtualFileSystemTest.cpp
@@ -101,7 +101,7 @@ class DummyFileSystem : public vfs::FileSystem {
     std::map<std::string, vfs::Status>::iterator I;
     std::string Path;
     bool isInPath(StringRef S) {
-      if (Path.size() < S.size() && S.find(Path) == 0) {
+      if (Path.size() < S.size() && S.starts_with(Path)) {
         auto LastSep = S.find_last_of('/');
         if (LastSep == Path.size() || LastSep == Path.size() - 1)
           return true;

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to