aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Sema/SemaCUDA.cpp
diff options
context:
space:
mode:
authorMatheus Izvekov <mizvekov@gmail.com>2025-08-25 20:18:56 -0300
committerGitHub <noreply@github.com>2025-08-25 20:18:56 -0300
commitdc8596d5485a52abee2967cec72f81ef4872270c (patch)
tree5d0b5cbc1fed95f3b9aae2b39387c0f2b4d0e47c /clang/lib/Sema/SemaCUDA.cpp
parent1ba8b36fef84bedb0a657b570076ec1a47e9061d (diff)
downloadllvm-dc8596d5485a52abee2967cec72f81ef4872270c.zip
llvm-dc8596d5485a52abee2967cec72f81ef4872270c.tar.gz
llvm-dc8596d5485a52abee2967cec72f81ef4872270c.tar.bz2
[clang] NFC: change more places to use Type::getAsTagDecl and friends (#155313)
This changes a bunch of places which use getAs<TagType>, including derived types, just to obtain the tag definition. This is preparation for #155028, offloading all the changes that PR used to introduce which don't depend on any new helpers.
Diffstat (limited to 'clang/lib/Sema/SemaCUDA.cpp')
-rw-r--r--clang/lib/Sema/SemaCUDA.cpp17
1 files changed, 5 insertions, 12 deletions
diff --git a/clang/lib/Sema/SemaCUDA.cpp b/clang/lib/Sema/SemaCUDA.cpp
index fbf64d3..2e3cbb3 100644
--- a/clang/lib/Sema/SemaCUDA.cpp
+++ b/clang/lib/Sema/SemaCUDA.cpp
@@ -421,13 +421,10 @@ bool SemaCUDA::inferTargetForImplicitSpecialMember(CXXRecordDecl *ClassDecl,
}
for (const auto *B : Bases) {
- const RecordType *BaseType = B->getType()->getAs<RecordType>();
- if (!BaseType) {
+ auto *BaseClassDecl = B->getType()->getAsCXXRecordDecl();
+ if (!BaseClassDecl)
continue;
- }
- CXXRecordDecl *BaseClassDecl =
- cast<CXXRecordDecl>(BaseType->getOriginalDecl())->getDefinitionOrSelf();
Sema::SpecialMemberOverloadResult SMOR =
SemaRef.LookupSpecialMember(BaseClassDecl, CSM,
/* ConstArg */ ConstRHS,
@@ -466,15 +463,11 @@ bool SemaCUDA::inferTargetForImplicitSpecialMember(CXXRecordDecl *ClassDecl,
continue;
}
- const RecordType *FieldType =
- getASTContext().getBaseElementType(F->getType())->getAs<RecordType>();
- if (!FieldType) {
+ auto *FieldRecDecl =
+ getASTContext().getBaseElementType(F->getType())->getAsCXXRecordDecl();
+ if (!FieldRecDecl)
continue;
- }
- CXXRecordDecl *FieldRecDecl =
- cast<CXXRecordDecl>(FieldType->getOriginalDecl())
- ->getDefinitionOrSelf();
Sema::SpecialMemberOverloadResult SMOR =
SemaRef.LookupSpecialMember(FieldRecDecl, CSM,
/* ConstArg */ ConstRHS && !F->isMutable(),