aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Serialization/ASTWriter.cpp
diff options
context:
space:
mode:
authoryronglin <yronglin777@gmail.com>2025-04-16 20:53:25 +0800
committerGitHub <noreply@github.com>2025-04-16 20:53:25 +0800
commitd3153ad66c539ad146062b6e65741901e5b5e1cc (patch)
tree2e2340c0ef9215149ec7f46256830437e5e547fb /clang/lib/Serialization/ASTWriter.cpp
parentfe4a31d59db7b18dc45c3593bf100c101e725b79 (diff)
downloadllvm-d3153ad66c539ad146062b6e65741901e5b5e1cc.zip
llvm-d3153ad66c539ad146062b6e65741901e5b5e1cc.tar.gz
llvm-d3153ad66c539ad146062b6e65741901e5b5e1cc.tar.bz2
[clang] Unify `SourceLocation` and `IdentifierInfo*` pair-like data structures to `IdentifierLoc` (#135808)
I found this issue when I working on https://github.com/llvm/llvm-project/pull/107168. Currently we have many similiar data structures like: - `std::pair<IdentifierInfo *, SourceLocation>`. - Element type of `ModuleIdPath`. - `IdentifierLocPair`. - `IdentifierLoc`. This PR unify these data structures to `IdentifierLoc`, moved `IdentifierLoc` definition to SourceLocation.h, and deleted other similer data structures. --------- Signed-off-by: yronglin <yronglin777@gmail.com>
Diffstat (limited to 'clang/lib/Serialization/ASTWriter.cpp')
-rw-r--r--clang/lib/Serialization/ASTWriter.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/clang/lib/Serialization/ASTWriter.cpp b/clang/lib/Serialization/ASTWriter.cpp
index 95b5718..4dca061 100644
--- a/clang/lib/Serialization/ASTWriter.cpp
+++ b/clang/lib/Serialization/ASTWriter.cpp
@@ -8774,10 +8774,10 @@ void ASTRecordWriter::writeOpenACCClause(const OpenACCClause *C) {
writeSourceLocation(DTC->getLParenLoc());
writeUInt32(DTC->getArchitectures().size());
for (const DeviceTypeArgument &Arg : DTC->getArchitectures()) {
- writeBool(Arg.first);
- if (Arg.first)
- AddIdentifierRef(Arg.first);
- writeSourceLocation(Arg.second);
+ writeBool(Arg.getIdentifierInfo());
+ if (Arg.getIdentifierInfo())
+ AddIdentifierRef(Arg.getIdentifierInfo());
+ writeSourceLocation(Arg.getLoc());
}
return;
}