[clang] ffc5b19 - [Clang][TableGen] Use const pointers for various Init objects in Diagnostic Emitter (#112318)
via cfe-commits
cfe-commits at lists.llvm.org
Tue Oct 15 15:49:27 PDT 2024
Author: Rahul Joshi
Date: 2024-10-15T15:49:23-07:00
New Revision: ffc5b191c840d6f93bc49770ffc9aa3a9ea79d02
URL: https://github.com/llvm/llvm-project/commit/ffc5b191c840d6f93bc49770ffc9aa3a9ea79d02
DIFF: https://github.com/llvm/llvm-project/commit/ffc5b191c840d6f93bc49770ffc9aa3a9ea79d02.diff
LOG: [Clang][TableGen] Use const pointers for various Init objects in Diagnostic Emitter (#112318)
Use const pointers for various Init objects in Diagnostic Emitter. 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 325d63de1563de..34e2e8f47ae71a 100644
--- a/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
+++ b/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
@@ -83,7 +83,7 @@ getCategoryFromDiagGroup(const Record *Group,
static std::string getDiagnosticCategory(const Record *R,
DiagGroupParentMap &DiagGroupParents) {
// If the diagnostic is in a group, and that group has a category, use it.
- if (DefInit *Group = dyn_cast<DefInit>(R->getValueInit("Group"))) {
+ if (const auto *Group = dyn_cast<DefInit>(R->getValueInit("Group"))) {
// Check the diagnostic's diag group for a category.
std::string CatName = getCategoryFromDiagGroup(Group->getDef(),
DiagGroupParents);
@@ -161,7 +161,7 @@ static void groupDiagnostics(ArrayRef<const Record *> Diags,
for (unsigned i = 0, e = Diags.size(); i != e; ++i) {
const Record *R = Diags[i];
- DefInit *DI = dyn_cast<DefInit>(R->getValueInit("Group"));
+ const auto *DI = dyn_cast<DefInit>(R->getValueInit("Group"));
if (!DI)
continue;
assert(R->getValueAsDef("Class")->getName() != "CLASS_NOTE" &&
@@ -359,7 +359,7 @@ void InferPedantic::compute(VecOrSet DiagsInPedantic,
const Record *R = Diags[i];
if (isExtension(R) && isOffByDefault(R)) {
DiagsSet.insert(R);
- if (DefInit *Group = dyn_cast<DefInit>(R->getValueInit("Group"))) {
+ if (const auto *Group = dyn_cast<DefInit>(R->getValueInit("Group"))) {
const Record *GroupRec = Group->getDef();
if (!isSubGroupOfGroup(GroupRec, "pedantic")) {
markGroup(GroupRec);
@@ -378,13 +378,13 @@ void InferPedantic::compute(VecOrSet DiagsInPedantic,
// Check if the group is implicitly in -Wpedantic. If so,
// the diagnostic should not be directly included in the -Wpedantic
// diagnostic group.
- if (DefInit *Group = dyn_cast<DefInit>(R->getValueInit("Group")))
+ if (const auto *Group = dyn_cast<DefInit>(R->getValueInit("Group")))
if (groupInPedantic(Group->getDef()))
continue;
// The diagnostic is not included in a group that is (transitively) in
// -Wpedantic. Include it in -Wpedantic directly.
- if (RecordVec *V = DiagsInPedantic.dyn_cast<RecordVec*>())
+ if (auto *V = DiagsInPedantic.dyn_cast<RecordVec *>())
V->push_back(R);
else {
DiagsInPedantic.get<RecordSet*>()->insert(R);
@@ -413,7 +413,7 @@ void InferPedantic::compute(VecOrSet DiagsInPedantic,
if (Parents.size() > 0 && AllParentsInPedantic)
continue;
- if (RecordVec *V = GroupsInPedantic.dyn_cast<RecordVec*>())
+ if (auto *V = GroupsInPedantic.dyn_cast<RecordVec *>())
V->push_back(Group);
else {
GroupsInPedantic.get<RecordSet*>()->insert(Group);
@@ -1443,7 +1443,7 @@ void clang::EmitClangDiagsDefs(const RecordKeeper &Records, raw_ostream &OS,
// Check if this is an error that is accidentally in a warning
// group.
if (isError(R)) {
- if (DefInit *Group = dyn_cast<DefInit>(R.getValueInit("Group"))) {
+ if (const auto *Group = dyn_cast<DefInit>(R.getValueInit("Group"))) {
const Record *GroupRec = Group->getDef();
const std::string &GroupName =
std::string(GroupRec->getValueAsString("GroupName"));
@@ -1478,7 +1478,7 @@ void clang::EmitClangDiagsDefs(const RecordKeeper &Records, raw_ostream &OS,
// Warning group associated with the diagnostic. This is stored as an index
// into the alphabetically sorted warning group table.
- if (DefInit *DI = dyn_cast<DefInit>(R.getValueInit("Group"))) {
+ if (const auto *DI = dyn_cast<DefInit>(R.getValueInit("Group"))) {
std::map<std::string, GroupInfo>::iterator I = DiagsInGroup.find(
std::string(DI->getDef()->getValueAsString("GroupName")));
assert(I != DiagsInGroup.end());
More information about the cfe-commits
mailing list