llvmorg-github-actions[bot] wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-clang
Author: Kazu Hirata (kazutakahirata)
<details>
<summary>Changes</summary>
PointerUnion::dyn_cast has been soft-deprecated in favor of
llvm::dyn_cast and llvm::dyn_cast_if_present. This patch replaces the
former with llvm::dyn_cast where the operand is guaranteed to be
nonnull.
Note that {Class,Var}TemplateSpecializationDecl::SpecializedTemplate is
always initialized to a nonnull pointer.
Assisted-by: Antigravity
---
Full diff: https://github.com/llvm/llvm-project/pull/229325.diff
2 Files Affected:
- (modified) clang/include/clang/AST/DeclTemplate.h (+4-4)
- (modified) clang/lib/AST/DeclTemplate.cpp (+2-2)
``````````diff
diff --git a/clang/include/clang/AST/DeclTemplate.h
b/clang/include/clang/AST/DeclTemplate.h
index d32b044ef40e2..575ca86155742 100644
--- a/clang/include/clang/AST/DeclTemplate.h
+++ b/clang/include/clang/AST/DeclTemplate.h
@@ -1993,7 +1993,7 @@ class ClassTemplateSpecializationDecl : public
CXXRecordDecl,
ClassTemplatePartialSpecializationDecl *>
getSpecializedTemplateOrPartial() const {
if (const auto *PartialSpec =
- SpecializedTemplate.dyn_cast<SpecializedPartialSpecialization *>())
+ dyn_cast<SpecializedPartialSpecialization *>(SpecializedTemplate))
return PartialSpec->PartialSpecialization;
return cast<ClassTemplateDecl *>(SpecializedTemplate);
@@ -2012,7 +2012,7 @@ class ClassTemplateSpecializationDecl : public
CXXRecordDecl,
/// itself.
const TemplateArgumentList &getTemplateInstantiationArgs() const {
if (const auto *PartialSpec =
- SpecializedTemplate.dyn_cast<SpecializedPartialSpecialization *>())
+ dyn_cast<SpecializedPartialSpecialization *>(SpecializedTemplate))
return *PartialSpec->TemplateArgs;
return getTemplateArgs();
@@ -2766,7 +2766,7 @@ class VarTemplateSpecializationDecl : public VarDecl,
llvm::PointerUnion<VarTemplateDecl *, VarTemplatePartialSpecializationDecl *>
getSpecializedTemplateOrPartial() const {
if (const auto *PartialSpec =
- SpecializedTemplate.dyn_cast<SpecializedPartialSpecialization *>())
+ dyn_cast<SpecializedPartialSpecialization *>(SpecializedTemplate))
return PartialSpec->PartialSpecialization;
return cast<VarTemplateDecl *>(SpecializedTemplate);
@@ -2785,7 +2785,7 @@ class VarTemplateSpecializationDecl : public VarDecl,
/// specialization itself.
const TemplateArgumentList &getTemplateInstantiationArgs() const {
if (const auto *PartialSpec =
- SpecializedTemplate.dyn_cast<SpecializedPartialSpecialization *>())
+ dyn_cast<SpecializedPartialSpecialization *>(SpecializedTemplate))
return *PartialSpec->TemplateArgs;
return getTemplateArgs();
diff --git a/clang/lib/AST/DeclTemplate.cpp b/clang/lib/AST/DeclTemplate.cpp
index 00712c46b2a94..abcd035740916 100644
--- a/clang/lib/AST/DeclTemplate.cpp
+++ b/clang/lib/AST/DeclTemplate.cpp
@@ -1023,7 +1023,7 @@ void
ClassTemplateSpecializationDecl::getNameForDiagnostic(
ClassTemplateDecl *
ClassTemplateSpecializationDecl::getSpecializedTemplate() const {
if (const auto *PartialSpec =
- SpecializedTemplate.dyn_cast<SpecializedPartialSpecialization*>())
+ dyn_cast<SpecializedPartialSpecialization *>(SpecializedTemplate))
return PartialSpec->PartialSpecialization->getSpecializedTemplate();
return cast<ClassTemplateDecl *>(SpecializedTemplate);
}
@@ -1487,7 +1487,7 @@ void VarTemplateSpecializationDecl::getNameForDiagnostic(
VarTemplateDecl *VarTemplateSpecializationDecl::getSpecializedTemplate() const
{
if (const auto *PartialSpec =
- SpecializedTemplate.dyn_cast<SpecializedPartialSpecialization *>())
+ dyn_cast<SpecializedPartialSpecialization *>(SpecializedTemplate))
return PartialSpec->PartialSpecialization->getSpecializedTemplate();
return cast<VarTemplateDecl *>(SpecializedTemplate);
}
``````````
</details>
https://github.com/llvm/llvm-project/pull/229325
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits