Author: Jan Svoboda Date: 2022-01-18T17:59:40+01:00 New Revision: c6fb636667b879bfc8329d2c9ca5873871b46a7b
URL: https://github.com/llvm/llvm-project/commit/c6fb636667b879bfc8329d2c9ca5873871b46a7b DIFF: https://github.com/llvm/llvm-project/commit/c6fb636667b879bfc8329d2c9ca5873871b46a7b.diff LOG: [clangd][clang-tidy] Remove uses of `std::vector<bool>` LLVM Programmer’s Manual strongly discourages the use of `std::vector<bool>` and suggests `llvm::BitVector` as a possible replacement. This patch does just that for clangd and clang-tidy. Reviewed By: dexonsmith Differential Revision: https://reviews.llvm.org/D117119 Added: Modified: clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp clang-tools-extra/clangd/Selection.cpp Removed: ################################################################################ diff --git a/clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp b/clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp index a76fe16effb6..66f60ec60b60 100644 --- a/clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp +++ b/clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp @@ -29,6 +29,7 @@ #include "clang/Lex/Lexer.h" #include "clang/Tooling/Core/Diagnostic.h" #include "clang/Tooling/Core/Replacement.h" +#include "llvm/ADT/BitVector.h" #include "llvm/ADT/STLExtras.h" #include "llvm/ADT/SmallString.h" #include "llvm/ADT/StringMap.h" @@ -863,7 +864,7 @@ void ClangTidyDiagnosticConsumer::removeIncompatibleErrors() { } } - std::vector<bool> Apply(ErrorFixes.size(), true); + llvm::BitVector Apply(ErrorFixes.size(), true); for (auto &FileAndEvents : FileEvents) { std::vector<Event> &Events = FileAndEvents.second; // Sweep. diff --git a/clang-tools-extra/clangd/Selection.cpp b/clang-tools-extra/clangd/Selection.cpp index 69e99a9a8e28..cc698631be03 100644 --- a/clang-tools-extra/clangd/Selection.cpp +++ b/clang-tools-extra/clangd/Selection.cpp @@ -24,6 +24,7 @@ #include "clang/Basic/TokenKinds.h" #include "clang/Lex/Lexer.h" #include "clang/Tooling/Syntax/Tokens.h" +#include "llvm/ADT/BitVector.h" #include "llvm/ADT/STLExtras.h" #include "llvm/ADT/StringExtras.h" #include "llvm/Support/Casting.h" @@ -260,7 +261,7 @@ class SelectionTester { }); auto Sel = llvm::makeArrayRef(SelFirst, SelLimit); // Find which of these are preprocessed to nothing and should be ignored. - std::vector<bool> PPIgnored(Sel.size(), false); + llvm::BitVector PPIgnored(Sel.size(), false); for (const syntax::TokenBuffer::Expansion &X : Buf.expansionsOverlapping(Sel)) { if (X.Expanded.empty()) { _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits