Skip to content

Commit 4c4537e

Browse files
committed
Rename getPointeeOrArrayElementType()
1 parent 1c26eb3 commit 4c4537e

File tree

14 files changed

+25
-22
lines changed

14 files changed

+25
-22
lines changed

clang-tools-extra/clang-tidy/bugprone/SuspiciousMemoryComparisonCheck.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ void SuspiciousMemoryComparisonCheck::check(
4545
for (unsigned int ArgIndex = 0; ArgIndex < 2; ++ArgIndex) {
4646
const Expr *ArgExpr = CE->getArg(ArgIndex);
4747
QualType ArgType = ArgExpr->IgnoreImplicit()->getType();
48-
const Type *PointeeType = ArgType->getPointeeOrArrayElementType();
48+
const Type *PointeeType = ArgType->getPointerOrObjCPointerOrArrayElementType();
4949
assert(PointeeType != nullptr && "PointeeType should always be available.");
5050
QualType PointeeQualifiedType(PointeeType, 0);
5151

clang-tools-extra/clang-tidy/mpi/TypeMismatchCheck.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -229,7 +229,7 @@ static bool isTypedefTypeMatching(const TypedefType *const Typedef,
229229
/// \returns type of the argument
230230
static const Type *argumentType(const CallExpr *const CE, const size_t Idx) {
231231
const QualType QT = CE->getArg(Idx)->IgnoreImpCasts()->getType();
232-
return QT.getTypePtr()->getPointeeOrArrayElementType();
232+
return QT.getTypePtr()->getPointerOrObjCPointerOrArrayElementType();
233233
}
234234

235235
void TypeMismatchCheck::registerMatchers(MatchFinder *Finder) {

clang-tools-extra/clangd/SemanticHighlighting.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -296,7 +296,7 @@ bool isDefaultLibrary(const Decl *D) {
296296
bool isDefaultLibrary(const Type *T) {
297297
if (!T)
298298
return false;
299-
const Type *Underlying = T->getPointeeOrArrayElementType();
299+
const Type *Underlying = T->getPointerOrObjCPointerOrArrayElementType();
300300
if (Underlying->isBuiltinType())
301301
return true;
302302
if (auto *TD = dyn_cast<TemplateTypeParmType>(Underlying))

clang/include/clang/AST/Type.h

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2863,10 +2863,13 @@ class alignas(TypeAlignment) Type : public ExtQualsTypeCommonBase {
28632863
/// This should never be used when type qualifiers are meaningful.
28642864
const Type *getArrayElementTypeNoTypeQual() const;
28652865

2866-
/// If this is a pointer type, return the pointee type.
2866+
/// If this is a C or ObjC pointer type, return the pointee type. Notably,
2867+
/// this does not handle things like member pointers or block pointers.
2868+
///
28672869
/// If this is an array type, return the array element type.
2870+
///
28682871
/// This should never be used when type qualifiers are meaningful.
2869-
const Type *getPointeeOrArrayElementType() const;
2872+
const Type *getPointerOrObjCPointerOrArrayElementType() const;
28702873

28712874
/// If this is a pointer, ObjC object pointer, or block
28722875
/// pointer, this returns the respective pointee.
@@ -8691,7 +8694,7 @@ inline const Type *Type::getBaseElementTypeUnsafe() const {
86918694
return type;
86928695
}
86938696

8694-
inline const Type *Type::getPointeeOrArrayElementType() const {
8697+
inline const Type *Type::getPointerOrObjCPointerOrArrayElementType() const {
86958698
const Type *type = this;
86968699
if (type->isPointerOrObjCObjectPointerType())
86978700
return type->getPointeeType().getTypePtr();

clang/lib/AST/ASTImporter.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1942,7 +1942,7 @@ Error ASTNodeImporter::ImportDeclParts(
19421942
FunDecl->hasBody()) {
19431943
auto getLeafPointeeType = [](const Type *T) {
19441944
while (T->isPointerType() || T->isArrayType()) {
1945-
T = T->getPointeeOrArrayElementType();
1945+
T = T->getPointerOrObjCPointerOrArrayElementType();
19461946
}
19471947
return T;
19481948
};

clang/lib/CodeGen/CGExpr.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -991,7 +991,7 @@ static llvm::Value *getArrayIndexingBound(CodeGenFunction &CGF,
991991

992992
CodeGenFunction::SanitizerScope SanScope(&CGF);
993993

994-
QualType EltTy{Base->getType()->getPointeeOrArrayElementType(), 0};
994+
QualType EltTy{Base->getType()->getPointerOrObjCPointerOrArrayElementType(), 0};
995995
if (llvm::Value *POS = CGF.LoadPassedObjectSize(Base, EltTy)) {
996996
IndexedType = Base->getType();
997997
return POS;

clang/lib/CodeGen/CGHLSLRuntime.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -290,7 +290,7 @@ calculateElementType(const ASTContext &Context, const clang::Type *ResourceTy) {
290290
}
291291

292292
void CGHLSLRuntime::annotateHLSLResource(const VarDecl *D, GlobalVariable *GV) {
293-
const Type *Ty = D->getType()->getPointeeOrArrayElementType();
293+
const Type *Ty = D->getType()->getPointerOrObjCPointerOrArrayElementType();
294294
if (!Ty)
295295
return;
296296
const auto *RD = Ty->getAsCXXRecordDecl();

clang/lib/CodeGen/CGOpenMPRuntime.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7551,7 +7551,7 @@ class MappableExprsHandler {
75517551
// For the case that having pointer as base, we need to remove one
75527552
// level of indirection.
75537553
if (&Component != &*Components.begin())
7554-
ElementType = ElementType->getPointeeOrArrayElementType();
7554+
ElementType = ElementType->getPointerOrObjCPointerOrArrayElementType();
75557555
ElementTypeSize =
75567556
Context.getTypeSizeInChars(ElementType).getQuantity();
75577557
CurStrides.push_back(
@@ -8628,10 +8628,10 @@ class MappableExprsHandler {
86288628
llvm::SmallVector<const FieldDecl *, 4> Layout;
86298629
if (!OverlappedData.empty()) {
86308630
const Type *BaseType = VD->getType().getCanonicalType().getTypePtr();
8631-
const Type *OrigType = BaseType->getPointeeOrArrayElementType();
8631+
const Type *OrigType = BaseType->getPointerOrObjCPointerOrArrayElementType();
86328632
while (BaseType != OrigType) {
86338633
BaseType = OrigType->getCanonicalTypeInternal().getTypePtr();
8634-
OrigType = BaseType->getPointeeOrArrayElementType();
8634+
OrigType = BaseType->getPointerOrObjCPointerOrArrayElementType();
86358635
}
86368636

86378637
if (const auto *CRD = BaseType->getAsCXXRecordDecl())

clang/lib/CodeGen/Targets/SystemZ.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -503,7 +503,7 @@ bool SystemZTargetCodeGenInfo::isVectorTypeBased(const Type *Ty,
503503

504504
// Assume pointers are dereferenced.
505505
while (Ty->isPointerType() || Ty->isArrayType())
506-
Ty = Ty->getPointeeOrArrayElementType();
506+
Ty = Ty->getPointerOrObjCPointerOrArrayElementType();
507507

508508
// Vectors >= 16 bytes expose the ABI through alignment requirements.
509509
if (Ty->isVectorType() && Ctx.getTypeSize(Ty) / 8 >= 16)

clang/lib/Sema/SemaChecking.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13424,7 +13424,7 @@ void Sema::CheckArrayAccess(const Expr *BaseExpr, const Expr *IndexExpr,
1342413424
return;
1342513425

1342613426
const Type *EffectiveType =
13427-
BaseExpr->getType()->getPointeeOrArrayElementType();
13427+
BaseExpr->getType()->getPointerOrObjCPointerOrArrayElementType();
1342813428
BaseExpr = BaseExpr->IgnoreParenCasts();
1342913429
const ConstantArrayType *ArrayTy =
1343013430
Context.getAsConstantArrayType(BaseExpr->getType());

clang/lib/Sema/SemaDecl.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9541,7 +9541,7 @@ static OpenCLParamType getOpenCLKernelParameterType(Sema &S, QualType PT) {
95419541

95429542
// Look into an array argument to check if it has a forbidden type.
95439543
if (PT->isArrayType()) {
9544-
const Type *UnderlyingTy = PT->getPointeeOrArrayElementType();
9544+
const Type *UnderlyingTy = PT->getPointerOrObjCPointerOrArrayElementType();
95459545
// Call ourself to check an underlying type of an array. Since the
95469546
// getPointeeOrArrayElementType returns an innermost type which is not an
95479547
// array, this recursive call only happens once.
@@ -9644,7 +9644,7 @@ static void checkIsValidOpenCLKernelParameter(
96449644
// an ArrayType of a RecordType.
96459645
assert((PT->isArrayType() || PT->isRecordType()) && "Unexpected type.");
96469646
const RecordType *RecTy =
9647-
PT->getPointeeOrArrayElementType()->getAs<RecordType>();
9647+
PT->getPointerOrObjCPointerOrArrayElementType()->getAs<RecordType>();
96489648
const RecordDecl *OrigRecDecl = RecTy->getDecl();
96499649

96509650
VisitStack.push_back(RecTy->getDecl());
@@ -9672,7 +9672,7 @@ static void checkIsValidOpenCLKernelParameter(
96729672
// walk around RecordDecl::fields().
96739673
assert((FieldTy->isArrayType() || FieldTy->isRecordType()) &&
96749674
"Unexpected type.");
9675-
const Type *FieldRecTy = FieldTy->getPointeeOrArrayElementType();
9675+
const Type *FieldRecTy = FieldTy->getPointerOrObjCPointerOrArrayElementType();
96769676

96779677
RD = FieldRecTy->castAs<RecordType>()->getDecl();
96789678
} else {

clang/lib/Sema/SemaExpr.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17069,8 +17069,8 @@ bool Sema::DiagnoseAssignmentResult(AssignConvertType ConvTy,
1706917069
return Type->isSpecificBuiltinType(BuiltinType::Char_S) ||
1707017070
Type->isSpecificBuiltinType(BuiltinType::Char_U);
1707117071
};
17072-
FDiag << (isPlainChar(FirstType->getPointeeOrArrayElementType()) ||
17073-
isPlainChar(SecondType->getPointeeOrArrayElementType()));
17072+
FDiag << (isPlainChar(FirstType->getPointerOrObjCPointerOrArrayElementType()) ||
17073+
isPlainChar(SecondType->getPointerOrObjCPointerOrArrayElementType()));
1707417074
}
1707517075

1707617076
// If we can fix the conversion, suggest the FixIts.

clang/lib/Sema/SemaInit.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7878,8 +7878,8 @@ ExprResult InitializationSequence::Perform(Sema &S,
78787878
if (MTETy->isIncompleteArrayType() &&
78797879
!CurInit.get()->getType()->isIncompleteArrayType() &&
78807880
S.Context.hasSameType(
7881-
MTETy->getPointeeOrArrayElementType(),
7882-
CurInit.get()->getType()->getPointeeOrArrayElementType()))
7881+
MTETy->getPointerOrObjCPointerOrArrayElementType(),
7882+
CurInit.get()->getType()->getPointerOrObjCPointerOrArrayElementType()))
78837883
MTETy = CurInit.get()->getType();
78847884

78857885
// Materialize the temporary into memory.

clang/lib/Sema/SemaOpenCL.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -324,7 +324,7 @@ bool SemaOpenCL::checkBuiltinEnqueueKernel(CallExpr *TheCall) {
324324
// Fifth argument is always passed as a pointer to clk_event_t.
325325
if (!Arg4->isNullPointerConstant(Context,
326326
Expr::NPC_ValueDependentIsNotNull) &&
327-
!Arg4->getType()->getPointeeOrArrayElementType()->isClkEventT()) {
327+
!Arg4->getType()->getPointerOrObjCPointerOrArrayElementType()->isClkEventT()) {
328328
Diag(TheCall->getArg(4)->getBeginLoc(),
329329
diag::err_opencl_builtin_expected_type)
330330
<< TheCall->getDirectCallee()

0 commit comments

Comments
 (0)