[clang-tools-extra] [clang-doc] fix flaky test in clang-doc (PR #101387)
via cfe-commits
cfe-commits at lists.llvm.org
Thu Aug 1 00:25:05 PDT 2024
https://github.com/PeterChou1 updated https://github.com/llvm/llvm-project/pull/101387
>From 3ec4d5b9e5bc24bfb466d65fd9c45c51fa6d3e94 Mon Sep 17 00:00:00 2001
From: PeterChou1 <peter.chou at mail.utoronto.ca>
Date: Wed, 31 Jul 2024 14:52:11 -0400
Subject: [PATCH 1/2] [clang-doc] uncomment unsupported
---
clang-tools-extra/test/clang-doc/basic-project.test | 3 ---
1 file changed, 3 deletions(-)
diff --git a/clang-tools-extra/test/clang-doc/basic-project.test b/clang-tools-extra/test/clang-doc/basic-project.test
index 38569d824f1f0..51d3ac6ce6dcd 100644
--- a/clang-tools-extra/test/clang-doc/basic-project.test
+++ b/clang-tools-extra/test/clang-doc/basic-project.test
@@ -1,6 +1,3 @@
-// See https://github.com/llvm/llvm-project/issues/97507.
-// UNSUPPORTED: target={{.*}}
-
// RUN: rm -rf %t && mkdir -p %t/docs %t/build
// RUN: sed 's|$test_dir|%/S|g' %S/Inputs/basic-project/database_template.json > %t/build/compile_commands.json
// RUN: clang-doc --format=html --output=%t/docs --executor=all-TUs %t/build/compile_commands.json
>From 114a5721e593a9b57ef31ed9856d0bce4a62da94 Mon Sep 17 00:00:00 2001
From: PeterChou1 <peter.chou at mail.utoronto.ca>
Date: Thu, 1 Aug 2024 03:24:42 -0400
Subject: [PATCH 2/2] [clang-doc] fix non-determinism
---
clang-tools-extra/clang-doc/tool/ClangDocMain.cpp | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/clang-tools-extra/clang-doc/tool/ClangDocMain.cpp b/clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
index 3363cafeded5e..9a540a5061b6a 100644
--- a/clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
+++ b/clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
@@ -287,7 +287,14 @@ Example usage for a project using a compile commands database:
auto R = USRToBitcode.try_emplace(Key, std::vector<StringRef>());
R.first->second.emplace_back(Value);
});
-
+
+ for (auto &Entry : USRToBitcode) {
+ std::vector<llvm::StringRef> &Bitcode = Entry.second;
+ std::sort(Bitcode.begin(), Bitcode.end(),
+ [](const llvm::StringRef &A, const llvm::StringRef &B) {
+ return A < B;
+ });
+ }
// Collects all Infos according to their unique USR value. This map is added
// to from the thread pool below and is protected by the USRToInfoMutex.
llvm::sys::Mutex USRToInfoMutex;
More information about the cfe-commits
mailing list