diff options
author | yronglin <yronglin777@gmail.com> | 2025-04-16 20:53:25 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-04-16 20:53:25 +0800 |
commit | d3153ad66c539ad146062b6e65741901e5b5e1cc (patch) | |
tree | 2e2340c0ef9215149ec7f46256830437e5e547fb /clang/lib/Serialization/ASTWriter.cpp | |
parent | fe4a31d59db7b18dc45c3593bf100c101e725b79 (diff) | |
download | llvm-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.cpp | 8 |
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; } |