Skip to content

[NFC][Clang] Adopt TrailingObjects API to build ArrayRef #139639

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
May 13, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion clang/include/clang/AST/DeclCXX.h
Original file line number Diff line number Diff line change
Expand Up @@ -3882,7 +3882,7 @@ class UsingPackDecl final
/// Get the set of using declarations that this pack expanded into. Note that
/// some of these may still be unresolved.
ArrayRef<NamedDecl *> expansions() const {
return llvm::ArrayRef(getTrailingObjects<NamedDecl *>(), NumExpansions);
return getTrailingObjects<NamedDecl *>(NumExpansions);
}

static UsingPackDecl *Create(ASTContext &C, DeclContext *DC,
Expand Down
12 changes: 4 additions & 8 deletions clang/include/clang/AST/DeclOpenACC.h
Original file line number Diff line number Diff line change
Expand Up @@ -76,8 +76,7 @@ class OpenACCDeclareDecl final
std::uninitialized_value_construct(
getTrailingObjects<const OpenACCClause *>(),
getTrailingObjects<const OpenACCClause *>() + NumClauses);
setClauseList(MutableArrayRef(getTrailingObjects<const OpenACCClause *>(),
NumClauses));
setClauseList(getTrailingObjects<const OpenACCClause *>(NumClauses));
}

OpenACCDeclareDecl(DeclContext *DC, SourceLocation StartLoc,
Expand All @@ -89,8 +88,7 @@ class OpenACCDeclareDecl final
llvm::uninitialized_copy(Clauses,
getTrailingObjects<const OpenACCClause *>());

setClauseList(MutableArrayRef(getTrailingObjects<const OpenACCClause *>(),
Clauses.size()));
setClauseList(getTrailingObjects<const OpenACCClause *>(Clauses.size()));
}

public:
Expand Down Expand Up @@ -122,8 +120,7 @@ class OpenACCRoutineDecl final
std::uninitialized_value_construct(
getTrailingObjects<const OpenACCClause *>(),
getTrailingObjects<const OpenACCClause *>() + NumClauses);
setClauseList(MutableArrayRef(getTrailingObjects<const OpenACCClause *>(),
NumClauses));
setClauseList(getTrailingObjects<const OpenACCClause *>(NumClauses));
}

OpenACCRoutineDecl(DeclContext *DC, SourceLocation StartLoc,
Expand All @@ -139,8 +136,7 @@ class OpenACCRoutineDecl final
// Initialize the trailing storage.
llvm::uninitialized_copy(Clauses,
getTrailingObjects<const OpenACCClause *>());
setClauseList(MutableArrayRef(getTrailingObjects<const OpenACCClause *>(),
Clauses.size()));
setClauseList(getTrailingObjects<const OpenACCClause *>(Clauses.size()));
}

public:
Expand Down
12 changes: 6 additions & 6 deletions clang/include/clang/AST/ExprCXX.h
Original file line number Diff line number Diff line change
Expand Up @@ -2945,7 +2945,7 @@ class TypeTraitExpr final

/// Retrieve the argument types.
ArrayRef<TypeSourceInfo *> getArgs() const {
return llvm::ArrayRef(getTrailingObjects<TypeSourceInfo *>(), getNumArgs());
return getTrailingObjects<TypeSourceInfo *>(getNumArgs());
}

SourceLocation getBeginLoc() const LLVM_READONLY { return Loc; }
Expand Down Expand Up @@ -3619,7 +3619,7 @@ class ExprWithCleanups final
ArrayRef<CleanupObject> objects);

ArrayRef<CleanupObject> getObjects() const {
return llvm::ArrayRef(getTrailingObjects<CleanupObject>(), getNumObjects());
return getTrailingObjects<CleanupObject>(getNumObjects());
}

unsigned getNumObjects() const { return ExprWithCleanupsBits.NumObjects; }
Expand Down Expand Up @@ -5126,19 +5126,19 @@ class CXXParenListInitExpr final
void updateDependence() { setDependence(computeDependence(this)); }

MutableArrayRef<Expr *> getInitExprs() {
return MutableArrayRef(getTrailingObjects<Expr *>(), NumExprs);
return getTrailingObjects<Expr *>(NumExprs);
}

const ArrayRef<Expr *> getInitExprs() const {
return ArrayRef(getTrailingObjects<Expr *>(), NumExprs);
return getTrailingObjects<Expr *>(NumExprs);
}

ArrayRef<Expr *> getUserSpecifiedInitExprs() {
return ArrayRef(getTrailingObjects<Expr *>(), NumUserSpecifiedExprs);
return getTrailingObjects<Expr *>(NumUserSpecifiedExprs);
}

const ArrayRef<Expr *> getUserSpecifiedInitExprs() const {
return ArrayRef(getTrailingObjects<Expr *>(), NumUserSpecifiedExprs);
return getTrailingObjects<Expr *>(NumUserSpecifiedExprs);
}

SourceLocation getBeginLoc() const LLVM_READONLY { return LParenLoc; }
Expand Down
4 changes: 2 additions & 2 deletions clang/include/clang/AST/ExprOpenMP.h
Original file line number Diff line number Diff line change
Expand Up @@ -78,12 +78,12 @@ class OMPArrayShapingExpr final

/// Fetches the dimensions for array shaping expression.
ArrayRef<Expr *> getDimensions() const {
return llvm::ArrayRef(getTrailingObjects<Expr *>(), NumDims);
return getTrailingObjects<Expr *>(NumDims);
}

/// Fetches source ranges for the brackets os the array shaping expression.
ArrayRef<SourceRange> getBracketsRanges() const {
return llvm::ArrayRef(getTrailingObjects<SourceRange>(), NumDims);
return getTrailingObjects<SourceRange>(NumDims);
}

/// Fetches base expression of array shaping expression.
Expand Down
43 changes: 21 additions & 22 deletions clang/include/clang/AST/OpenACCClause.h
Original file line number Diff line number Diff line change
Expand Up @@ -541,8 +541,7 @@ class OpenACCWaitClause final
auto *Exprs = getTrailingObjects<Expr *>();
llvm::uninitialized_copy(ArrayRef(DevNumExpr), Exprs);
llvm::uninitialized_copy(QueueIdExprs, Exprs + 1);
setExprs(
MutableArrayRef(getTrailingObjects<Expr *>(), QueueIdExprs.size() + 1));
setExprs(getTrailingObjects<Expr *>(QueueIdExprs.size() + 1));
}

public:
Expand Down Expand Up @@ -580,7 +579,7 @@ class OpenACCNumGangsClause final
: OpenACCClauseWithExprs(OpenACCClauseKind::NumGangs, BeginLoc, LParenLoc,
EndLoc) {
llvm::uninitialized_copy(IntExprs, getTrailingObjects<Expr *>());
setExprs(MutableArrayRef(getTrailingObjects<Expr *>(), IntExprs.size()));
setExprs(getTrailingObjects<Expr *>(IntExprs.size()));
}

public:
Expand Down Expand Up @@ -609,7 +608,7 @@ class OpenACCTileClause final
: OpenACCClauseWithExprs(OpenACCClauseKind::Tile, BeginLoc, LParenLoc,
EndLoc) {
llvm::uninitialized_copy(SizeExprs, getTrailingObjects<Expr *>());
setExprs(MutableArrayRef(getTrailingObjects<Expr *>(), SizeExprs.size()));
setExprs(getTrailingObjects<Expr *>(SizeExprs.size()));
}

public:
Expand Down Expand Up @@ -847,7 +846,7 @@ class OpenACCPrivateClause final
: OpenACCClauseWithVarList(OpenACCClauseKind::Private, BeginLoc,
LParenLoc, EndLoc) {
llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
setExprs(MutableArrayRef(getTrailingObjects<Expr *>(), VarList.size()));
setExprs(getTrailingObjects<Expr *>(VarList.size()));
}

public:
Expand All @@ -869,7 +868,7 @@ class OpenACCFirstPrivateClause final
: OpenACCClauseWithVarList(OpenACCClauseKind::FirstPrivate, BeginLoc,
LParenLoc, EndLoc) {
llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
setExprs(MutableArrayRef(getTrailingObjects<Expr *>(), VarList.size()));
setExprs(getTrailingObjects<Expr *>(VarList.size()));
}

public:
Expand All @@ -891,7 +890,7 @@ class OpenACCDevicePtrClause final
: OpenACCClauseWithVarList(OpenACCClauseKind::DevicePtr, BeginLoc,
LParenLoc, EndLoc) {
llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
setExprs(MutableArrayRef(getTrailingObjects<Expr *>(), VarList.size()));
setExprs(getTrailingObjects<Expr *>(VarList.size()));
}

public:
Expand All @@ -913,7 +912,7 @@ class OpenACCAttachClause final
: OpenACCClauseWithVarList(OpenACCClauseKind::Attach, BeginLoc, LParenLoc,
EndLoc) {
llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
setExprs(MutableArrayRef(getTrailingObjects<Expr *>(), VarList.size()));
setExprs(getTrailingObjects<Expr *>(VarList.size()));
}

public:
Expand All @@ -935,7 +934,7 @@ class OpenACCDetachClause final
: OpenACCClauseWithVarList(OpenACCClauseKind::Detach, BeginLoc, LParenLoc,
EndLoc) {
llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
setExprs(MutableArrayRef(getTrailingObjects<Expr *>(), VarList.size()));
setExprs(getTrailingObjects<Expr *>(VarList.size()));
}

public:
Expand All @@ -957,7 +956,7 @@ class OpenACCDeleteClause final
: OpenACCClauseWithVarList(OpenACCClauseKind::Delete, BeginLoc, LParenLoc,
EndLoc) {
llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
setExprs(MutableArrayRef(getTrailingObjects<Expr *>(), VarList.size()));
setExprs(getTrailingObjects<Expr *>(VarList.size()));
}

public:
Expand All @@ -979,7 +978,7 @@ class OpenACCUseDeviceClause final
: OpenACCClauseWithVarList(OpenACCClauseKind::UseDevice, BeginLoc,
LParenLoc, EndLoc) {
llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
setExprs(MutableArrayRef(getTrailingObjects<Expr *>(), VarList.size()));
setExprs(getTrailingObjects<Expr *>(VarList.size()));
}

public:
Expand All @@ -1001,7 +1000,7 @@ class OpenACCNoCreateClause final
: OpenACCClauseWithVarList(OpenACCClauseKind::NoCreate, BeginLoc,
LParenLoc, EndLoc) {
llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
setExprs(MutableArrayRef(getTrailingObjects<Expr *>(), VarList.size()));
setExprs(getTrailingObjects<Expr *>(VarList.size()));
}

public:
Expand All @@ -1023,7 +1022,7 @@ class OpenACCPresentClause final
: OpenACCClauseWithVarList(OpenACCClauseKind::Present, BeginLoc,
LParenLoc, EndLoc) {
llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
setExprs(MutableArrayRef(getTrailingObjects<Expr *>(), VarList.size()));
setExprs(getTrailingObjects<Expr *>(VarList.size()));
}

public:
Expand All @@ -1044,7 +1043,7 @@ class OpenACCHostClause final
: OpenACCClauseWithVarList(OpenACCClauseKind::Host, BeginLoc, LParenLoc,
EndLoc) {
llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
setExprs(MutableArrayRef(getTrailingObjects<Expr *>(), VarList.size()));
setExprs(getTrailingObjects<Expr *>(VarList.size()));
}

public:
Expand All @@ -1067,7 +1066,7 @@ class OpenACCDeviceClause final
: OpenACCClauseWithVarList(OpenACCClauseKind::Device, BeginLoc, LParenLoc,
EndLoc) {
llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
setExprs(MutableArrayRef(getTrailingObjects<Expr *>(), VarList.size()));
setExprs(getTrailingObjects<Expr *>(VarList.size()));
}

public:
Expand Down Expand Up @@ -1095,7 +1094,7 @@ class OpenACCCopyClause final
Spelling == OpenACCClauseKind::PresentOrCopy) &&
"Invalid clause kind for copy-clause");
llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
setExprs(MutableArrayRef(getTrailingObjects<Expr *>(), VarList.size()));
setExprs(getTrailingObjects<Expr *>(VarList.size()));
}

public:
Expand Down Expand Up @@ -1129,7 +1128,7 @@ class OpenACCCopyInClause final
Spelling == OpenACCClauseKind::PresentOrCopyIn) &&
"Invalid clause kind for copyin-clause");
llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
setExprs(MutableArrayRef(getTrailingObjects<Expr *>(), VarList.size()));
setExprs(getTrailingObjects<Expr *>(VarList.size()));
}

public:
Expand Down Expand Up @@ -1162,7 +1161,7 @@ class OpenACCCopyOutClause final
Spelling == OpenACCClauseKind::PresentOrCopyOut) &&
"Invalid clause kind for copyout-clause");
llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
setExprs(MutableArrayRef(getTrailingObjects<Expr *>(), VarList.size()));
setExprs(getTrailingObjects<Expr *>(VarList.size()));
}

public:
Expand Down Expand Up @@ -1195,7 +1194,7 @@ class OpenACCCreateClause final
Spelling == OpenACCClauseKind::PresentOrCreate) &&
"Invalid clause kind for create-clause");
llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
setExprs(MutableArrayRef(getTrailingObjects<Expr *>(), VarList.size()));
setExprs(getTrailingObjects<Expr *>(VarList.size()));
}

public:
Expand Down Expand Up @@ -1225,7 +1224,7 @@ class OpenACCReductionClause final
LParenLoc, EndLoc),
Op(Operator) {
llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
setExprs(MutableArrayRef(getTrailingObjects<Expr *>(), VarList.size()));
setExprs(getTrailingObjects<Expr *>(VarList.size()));
}

public:
Expand All @@ -1251,7 +1250,7 @@ class OpenACCLinkClause final
: OpenACCClauseWithVarList(OpenACCClauseKind::Link, BeginLoc, LParenLoc,
EndLoc) {
llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
setExprs(MutableArrayRef(getTrailingObjects<Expr *>(), VarList.size()));
setExprs(getTrailingObjects<Expr *>(VarList.size()));
}

public:
Expand All @@ -1275,7 +1274,7 @@ class OpenACCDeviceResidentClause final
: OpenACCClauseWithVarList(OpenACCClauseKind::DeviceResident, BeginLoc,
LParenLoc, EndLoc) {
llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
setExprs(MutableArrayRef(getTrailingObjects<Expr *>(), VarList.size()));
setExprs(getTrailingObjects<Expr *>(VarList.size()));
}

public:
Expand Down
7 changes: 3 additions & 4 deletions clang/include/clang/AST/OpenMPClause.h
Original file line number Diff line number Diff line change
Expand Up @@ -3820,10 +3820,10 @@ class OMPReductionClause final

/// Get the list of help private variable reduction flags
MutableArrayRef<bool> getPrivateVariableReductionFlags() {
return MutableArrayRef(getTrailingObjects<bool>(), varlist_size());
return getTrailingObjects<bool>(varlist_size());
}
ArrayRef<bool> getPrivateVariableReductionFlags() const {
return ArrayRef(getTrailingObjects<bool>(), varlist_size());
return getTrailingObjects<bool>(varlist_size());
}

/// Returns the number of Expr* objects in trailing storage
Expand Down Expand Up @@ -9660,8 +9660,7 @@ class OMPChildren final

/// Get the clauses storage.
MutableArrayRef<OMPClause *> getClauses() {
return llvm::MutableArrayRef(getTrailingObjects<OMPClause *>(),
NumClauses);
return getTrailingObjects<OMPClause *>(NumClauses);
}
ArrayRef<OMPClause *> getClauses() const {
return const_cast<OMPChildren *>(this)->getClauses();
Expand Down
Loading