[clang] dc6411d - [AST] Migrate away from PointerUnion::dyn_cast (NFC) (#124502)
via cfe-commits
cfe-commits at lists.llvm.org
Mon Jan 27 10:34:20 PST 2025
Author: Kazu Hirata
Date: 2025-01-27T10:34:16-08:00
New Revision: dc6411d3e1ab903750a4c80571ee0ebd7e26a62c
URL: https://github.com/llvm/llvm-project/commit/dc6411d3e1ab903750a4c80571ee0ebd7e26a62c
DIFF: https://github.com/llvm/llvm-project/commit/dc6411d3e1ab903750a4c80571ee0ebd7e26a62c.diff
LOG: [AST] Migrate away from PointerUnion::dyn_cast (NFC) (#124502)
Note that PointerUnion::dyn_cast has been soft deprecated in
PointerUnion.h:
// FIXME: Replace the uses of is(), get() and dyn_cast() with
// isa<T>, cast<T> and the llvm::dyn_cast<T>
Literal migration would result in dyn_cast_if_present (see the
definition of PointerUnion::dyn_cast), but this patch uses dyn_cast
because we expect TemplateOrSpecialization to be nonnull.
Added:
Modified:
clang/lib/AST/Decl.cpp
Removed:
################################################################################
diff --git a/clang/lib/AST/Decl.cpp b/clang/lib/AST/Decl.cpp
index 728556614e632f..beb5fcaefac535 100644
--- a/clang/lib/AST/Decl.cpp
+++ b/clang/lib/AST/Decl.cpp
@@ -4360,9 +4360,9 @@ FunctionDecl::getTemplateSpecializationKindForInstantiation() const {
void
FunctionDecl::setTemplateSpecializationKind(TemplateSpecializationKind TSK,
SourceLocation PointOfInstantiation) {
- if (FunctionTemplateSpecializationInfo *FTSInfo
- = TemplateOrSpecialization.dyn_cast<
- FunctionTemplateSpecializationInfo*>()) {
+ if (FunctionTemplateSpecializationInfo *FTSInfo =
+ dyn_cast<FunctionTemplateSpecializationInfo *>(
+ TemplateOrSpecialization)) {
FTSInfo->setTemplateSpecializationKind(TSK);
if (TSK != TSK_ExplicitSpecialization &&
PointOfInstantiation.isValid() &&
@@ -4371,8 +4371,9 @@ FunctionDecl::setTemplateSpecializationKind(TemplateSpecializationKind TSK,
if (ASTMutationListener *L = getASTContext().getASTMutationListener())
L->InstantiationRequested(this);
}
- } else if (MemberSpecializationInfo *MSInfo
- = TemplateOrSpecialization.dyn_cast<MemberSpecializationInfo*>()) {
+ } else if (MemberSpecializationInfo *MSInfo =
+ dyn_cast<MemberSpecializationInfo *>(
+ TemplateOrSpecialization)) {
MSInfo->setTemplateSpecializationKind(TSK);
if (TSK != TSK_ExplicitSpecialization &&
PointOfInstantiation.isValid() &&
More information about the cfe-commits
mailing list