[clang] [clang][TableGen] Change SACheckersEmitter to use const RecordKeeper (PR #108477)
via cfe-commits
cfe-commits at lists.llvm.org
Thu Sep 12 20:48:05 PDT 2024
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-clang
Author: Rahul Joshi (jurahul)
<details>
<summary>Changes</summary>
Change SACheckersEmitter to use const RecordKeeper.
This is a part of effort to have better const correctness in TableGen backends:
https://discourse.llvm.org/t/psa-planned-changes-to-tablegen-getallderiveddefinitions-api-potential-downstream-breakages/81089
---
Full diff: https://github.com/llvm/llvm-project/pull/108477.diff
2 Files Affected:
- (modified) clang/utils/TableGen/ClangSACheckersEmitter.cpp (+5-3)
- (modified) clang/utils/TableGen/TableGenBackends.h (+2-1)
``````````diff
diff --git a/clang/utils/TableGen/ClangSACheckersEmitter.cpp b/clang/utils/TableGen/ClangSACheckersEmitter.cpp
index 2a2e466ae19797..44c2d8b31655d2 100644
--- a/clang/utils/TableGen/ClangSACheckersEmitter.cpp
+++ b/clang/utils/TableGen/ClangSACheckersEmitter.cpp
@@ -174,9 +174,11 @@ static void printOption(llvm::raw_ostream &OS, StringRef FullName,
OS << "true";
}
-void clang::EmitClangSACheckers(RecordKeeper &Records, raw_ostream &OS) {
- std::vector<Record*> checkers = Records.getAllDerivedDefinitions("Checker");
- std::vector<Record*> packages = Records.getAllDerivedDefinitions("Package");
+void clang::EmitClangSACheckers(const RecordKeeper &Records, raw_ostream &OS) {
+ ArrayRef<const Record *> checkers =
+ Records.getAllDerivedDefinitions("Checker");
+ ArrayRef<const Record *> packages =
+ Records.getAllDerivedDefinitions("Package");
using SortedRecords = llvm::StringMap<const Record *>;
diff --git a/clang/utils/TableGen/TableGenBackends.h b/clang/utils/TableGen/TableGenBackends.h
index 01d16d2dc3e5f1..4d0fe3e2cdcc37 100644
--- a/clang/utils/TableGen/TableGenBackends.h
+++ b/clang/utils/TableGen/TableGenBackends.h
@@ -93,7 +93,8 @@ void EmitClangDiagGroups(const llvm::RecordKeeper &Records,
void EmitClangDiagsIndexName(const llvm::RecordKeeper &Records,
llvm::raw_ostream &OS);
-void EmitClangSACheckers(llvm::RecordKeeper &Records, llvm::raw_ostream &OS);
+void EmitClangSACheckers(const llvm::RecordKeeper &Records,
+ llvm::raw_ostream &OS);
void EmitClangCommentHTMLTags(const llvm::RecordKeeper &Records,
llvm::raw_ostream &OS);
``````````
</details>
https://github.com/llvm/llvm-project/pull/108477
More information about the cfe-commits
mailing list