Skip to content

Commit ce1c3c7

Browse files
committed
[NFC][Clang] Use simplified getTrailingObjects in ASTReader
1 parent 711f6a8 commit ce1c3c7

File tree

2 files changed

+20
-23
lines changed

2 files changed

+20
-23
lines changed

clang/lib/Serialization/ASTReaderDecl.cpp

Lines changed: 11 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -666,22 +666,21 @@ void ASTDeclReader::VisitPragmaCommentDecl(PragmaCommentDecl *D) {
666666
D->setLocation(readSourceLocation());
667667
D->CommentKind = (PragmaMSCommentKind)Record.readInt();
668668
std::string Arg = readString();
669-
memcpy(D->getTrailingObjects<char>(), Arg.data(), Arg.size());
670-
D->getTrailingObjects<char>()[Arg.size()] = '\0';
669+
memcpy(D->getTrailingObjects(), Arg.data(), Arg.size());
670+
D->getTrailingObjects()[Arg.size()] = '\0';
671671
}
672672

673673
void ASTDeclReader::VisitPragmaDetectMismatchDecl(PragmaDetectMismatchDecl *D) {
674674
VisitDecl(D);
675675
D->setLocation(readSourceLocation());
676676
std::string Name = readString();
677-
memcpy(D->getTrailingObjects<char>(), Name.data(), Name.size());
678-
D->getTrailingObjects<char>()[Name.size()] = '\0';
677+
memcpy(D->getTrailingObjects(), Name.data(), Name.size());
678+
D->getTrailingObjects()[Name.size()] = '\0';
679679

680680
D->ValueStart = Name.size() + 1;
681681
std::string Value = readString();
682-
memcpy(D->getTrailingObjects<char>() + D->ValueStart, Value.data(),
683-
Value.size());
684-
D->getTrailingObjects<char>()[D->ValueStart + Value.size()] = '\0';
682+
memcpy(D->getTrailingObjects() + D->ValueStart, Value.data(), Value.size());
683+
D->getTrailingObjects()[D->ValueStart + Value.size()] = '\0';
685684
}
686685

687686
void ASTDeclReader::VisitTranslationUnitDecl(TranslationUnitDecl *TU) {
@@ -1748,7 +1747,7 @@ void ASTDeclReader::VisitParmVarDecl(ParmVarDecl *PD) {
17481747

17491748
void ASTDeclReader::VisitDecompositionDecl(DecompositionDecl *DD) {
17501749
VisitVarDecl(DD);
1751-
auto **BDs = DD->getTrailingObjects<BindingDecl *>();
1750+
auto **BDs = DD->getTrailingObjects();
17521751
for (unsigned I = 0; I != DD->NumBindings; ++I) {
17531752
BDs[I] = readDeclAs<BindingDecl>();
17541753
BDs[I]->setDecomposedDecl(DD);
@@ -1923,7 +1922,7 @@ void ASTDeclReader::VisitUsingEnumDecl(UsingEnumDecl *D) {
19231922
void ASTDeclReader::VisitUsingPackDecl(UsingPackDecl *D) {
19241923
VisitNamedDecl(D);
19251924
D->InstantiatedFrom = readDeclAs<NamedDecl>();
1926-
auto **Expansions = D->getTrailingObjects<NamedDecl *>();
1925+
auto **Expansions = D->getTrailingObjects();
19271926
for (unsigned I = 0; I != D->NumExpansions; ++I)
19281927
Expansions[I] = readDeclAs<NamedDecl>();
19291928
mergeMergeable(D);
@@ -2364,7 +2363,7 @@ void ASTDeclReader::VisitImportDecl(ImportDecl *D) {
23642363
VisitDecl(D);
23652364
D->ImportedModule = readModule();
23662365
D->setImportComplete(Record.readInt());
2367-
auto *StoredLocs = D->getTrailingObjects<SourceLocation>();
2366+
auto *StoredLocs = D->getTrailingObjects();
23682367
for (unsigned I = 0, N = Record.back(); I != N; ++I)
23692368
StoredLocs[I] = readSourceLocation();
23702369
Record.skipInts(1); // The number of stored source locations.
@@ -2382,8 +2381,7 @@ void ASTDeclReader::VisitFriendDecl(FriendDecl *D) {
23822381
else
23832382
D->Friend = readTypeSourceInfo();
23842383
for (unsigned i = 0; i != D->NumTPLists; ++i)
2385-
D->getTrailingObjects<TemplateParameterList *>()[i] =
2386-
Record.readTemplateParameterList();
2384+
D->getTrailingObjects()[i] = Record.readTemplateParameterList();
23872385
D->NextFriend = readDeclID().getRawValue();
23882386
D->UnsupportedFriend = (Record.readInt() != 0);
23892387
D->FriendLoc = readSourceLocation();
@@ -2751,7 +2749,7 @@ void ASTDeclReader::VisitTemplateTemplateParmDecl(TemplateTemplateParmDecl *D) {
27512749
D->setDepth(Record.readInt());
27522750
D->setPosition(Record.readInt());
27532751
if (D->isExpandedParameterPack()) {
2754-
auto **Data = D->getTrailingObjects<TemplateParameterList *>();
2752+
auto **Data = D->getTrailingObjects();
27552753
for (unsigned I = 0, N = D->getNumExpansionTemplateParameters();
27562754
I != N; ++I)
27572755
Data[I] = Record.readTemplateParameterList();

clang/lib/Serialization/ASTReaderStmt.cpp

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -719,7 +719,7 @@ void ASTStmtReader::VisitParenListExpr(ParenListExpr *E) {
719719
unsigned NumExprs = Record.readInt();
720720
assert((NumExprs == E->getNumExprs()) && "Wrong NumExprs!");
721721
for (unsigned I = 0; I != NumExprs; ++I)
722-
E->getTrailingObjects<Stmt *>()[I] = Record.readSubStmt();
722+
E->getTrailingObjects()[I] = Record.readSubStmt();
723723
E->LParenLoc = readSourceLocation();
724724
E->RParenLoc = readSourceLocation();
725725
}
@@ -1892,7 +1892,7 @@ void ASTStmtReader::VisitCXXDefaultArgExpr(CXXDefaultArgExpr *E) {
18921892
E->CXXDefaultArgExprBits.Loc = readSourceLocation();
18931893
E->CXXDefaultArgExprBits.HasRewrittenInit = Record.readInt();
18941894
if (E->CXXDefaultArgExprBits.HasRewrittenInit)
1895-
*E->getTrailingObjects<Expr *>() = Record.readSubExpr();
1895+
*E->getTrailingObjects() = Record.readSubExpr();
18961896
}
18971897

18981898
void ASTStmtReader::VisitCXXDefaultInitExpr(CXXDefaultInitExpr *E) {
@@ -1902,7 +1902,7 @@ void ASTStmtReader::VisitCXXDefaultInitExpr(CXXDefaultInitExpr *E) {
19021902
E->UsedContext = readDeclAs<DeclContext>();
19031903
E->CXXDefaultInitExprBits.Loc = readSourceLocation();
19041904
if (E->CXXDefaultInitExprBits.HasRewrittenInit)
1905-
*E->getTrailingObjects<Expr *>() = Record.readSubExpr();
1905+
*E->getTrailingObjects() = Record.readSubExpr();
19061906
}
19071907

19081908
void ASTStmtReader::VisitCXXBindTemporaryExpr(CXXBindTemporaryExpr *E) {
@@ -1999,7 +1999,7 @@ void ASTStmtReader::VisitExprWithCleanups(ExprWithCleanups *E) {
19991999
Obj = cast<CompoundLiteralExpr>(Record.readSubExpr());
20002000
else
20012001
llvm_unreachable("unexpected cleanup object type");
2002-
E->getTrailingObjects<ExprWithCleanups::CleanupObject>()[i] = Obj;
2002+
E->getTrailingObjects()[i] = Obj;
20032003
}
20042004

20052005
E->ExprWithCleanupsBits.CleanupsHaveSideEffects = Record.readInt();
@@ -2198,9 +2198,8 @@ void ASTStmtReader::VisitSizeOfPackExpr(SizeOfPackExpr *E) {
21982198
E->Pack = Record.readDeclAs<NamedDecl>();
21992199
if (E->isPartiallySubstituted()) {
22002200
assert(E->Length == NumPartialArgs);
2201-
for (auto *I = E->getTrailingObjects<TemplateArgument>(),
2202-
*E = I + NumPartialArgs;
2203-
I != E; ++I)
2201+
for (auto *I = E->getTrailingObjects(), *E = I + NumPartialArgs; I != E;
2202+
++I)
22042203
new (I) TemplateArgument(Record.readTemplateArgument());
22052204
} else if (!E->isValueDependent()) {
22062205
E->Length = Record.readInt();
@@ -2215,7 +2214,7 @@ void ASTStmtReader::VisitPackIndexingExpr(PackIndexingExpr *E) {
22152214
E->RSquareLoc = readSourceLocation();
22162215
E->SubExprs[0] = Record.readStmt();
22172216
E->SubExprs[1] = Record.readStmt();
2218-
auto **Exprs = E->getTrailingObjects<Expr *>();
2217+
auto **Exprs = E->getTrailingObjects();
22192218
for (unsigned I = 0; I < E->PackIndexingExprBits.TransformedExpressions; ++I)
22202219
Exprs[I] = Record.readExpr();
22212220
}
@@ -2252,7 +2251,7 @@ void ASTStmtReader::VisitFunctionParmPackExpr(FunctionParmPackExpr *E) {
22522251
E->NumParameters = Record.readInt();
22532252
E->ParamPack = readDeclAs<ValueDecl>();
22542253
E->NameLoc = readSourceLocation();
2255-
auto **Parms = E->getTrailingObjects<ValueDecl *>();
2254+
auto **Parms = E->getTrailingObjects();
22562255
for (unsigned i = 0, n = E->NumParameters; i != n; ++i)
22572256
Parms[i] = readDeclAs<ValueDecl>();
22582257
}
@@ -2289,7 +2288,7 @@ void ASTStmtReader::VisitCXXParenListInitExpr(CXXParenListInitExpr *E) {
22892288
E->LParenLoc = readSourceLocation();
22902289
E->RParenLoc = readSourceLocation();
22912290
for (unsigned I = 0; I < ExpectedNumExprs; I++)
2292-
E->getTrailingObjects<Expr *>()[I] = Record.readSubExpr();
2291+
E->getTrailingObjects()[I] = Record.readSubExpr();
22932292

22942293
bool HasArrayFillerOrUnionDecl = Record.readBool();
22952294
if (HasArrayFillerOrUnionDecl) {

0 commit comments

Comments
 (0)