[clang] 52e7c69 - [Clang][TableGen] Change ClangDiagnosticEmitter to use const Record * (#110585)
via cfe-commits
cfe-commits at lists.llvm.org
Tue Oct 1 06:52:23 PDT 2024
Author: Rahul Joshi
Date: 2024-10-01T06:52:20-07:00
New Revision: 52e7c699a5a0cbc157773cd1790a669d14d681cf
URL: https://github.com/llvm/llvm-project/commit/52e7c699a5a0cbc157773cd1790a669d14d681cf
DIFF: https://github.com/llvm/llvm-project/commit/52e7c699a5a0cbc157773cd1790a669d14d681cf.diff
LOG: [Clang][TableGen] Change ClangDiagnosticEmitter to use const Record * (#110585)
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
Added:
Modified:
clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
Removed:
################################################################################
diff --git a/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp b/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
index 7a8aa181c7588f..d9bb0630aff5f3 100644
--- a/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
+++ b/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
@@ -47,8 +47,8 @@ class DiagGroupParentMap {
ArrayRef<const Record *> DiagGroups =
Records.getAllDerivedDefinitions("DiagGroup");
for (unsigned i = 0, e = DiagGroups.size(); i != e; ++i) {
- std::vector<Record*> SubGroups =
- DiagGroups[i]->getValueAsListOfDefs("SubGroups");
+ std::vector<const Record *> SubGroups =
+ DiagGroups[i]->getValueAsListOfConstDefs("SubGroups");
for (unsigned j = 0, e = SubGroups.size(); j != e; ++j)
Mapping[SubGroups[j]].push_back(DiagGroups[i]);
}
@@ -180,10 +180,8 @@ static void groupDiagnostics(ArrayRef<const Record *> Diags,
GI.GroupName = Group->getName();
GI.Defs.push_back(Group);
- std::vector<Record*> SubGroups = Group->getValueAsListOfDefs("SubGroups");
- for (unsigned j = 0, e = SubGroups.size(); j != e; ++j)
- GI.SubGroups.push_back(
- std::string(SubGroups[j]->getValueAsString("GroupName")));
+ for (const Record *SubGroup : Group->getValueAsListOfDefs("SubGroups"))
+ GI.SubGroups.push_back(SubGroup->getValueAsString("GroupName").str());
}
// Assign unique ID numbers to the groups.
More information about the cfe-commits
mailing list