diff options
author | Dmitry Polukhin <34227995+dmpolukhin@users.noreply.github.com> | 2025-06-17 09:45:18 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-06-17 09:45:18 +0100 |
commit | 0f8c72160ec001599ecb29f0fa182c5550f5dd0a (patch) | |
tree | 0ca911770a085a043b8776ebe86b6047c0b7c143 /clang/lib/Serialization | |
parent | 2c90ebf3a79e25db3e6bcd9b3a66590b5996de4d (diff) | |
download | llvm-0f8c72160ec001599ecb29f0fa182c5550f5dd0a.zip llvm-0f8c72160ec001599ecb29f0fa182c5550f5dd0a.tar.gz llvm-0f8c72160ec001599ecb29f0fa182c5550f5dd0a.tar.bz2 |
[C++20][Modules] Disable preferred_name when writing a C++20 header unit (#144377)
https://reviews.llvm.org/D130331 added workaround for named modules
only. But the same issue happens for headees units. Link issue #56490
Diffstat (limited to 'clang/lib/Serialization')
-rw-r--r-- | clang/lib/Serialization/ASTWriter.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/clang/lib/Serialization/ASTWriter.cpp b/clang/lib/Serialization/ASTWriter.cpp index ab1b5b3..be22ee5 100644 --- a/clang/lib/Serialization/ASTWriter.cpp +++ b/clang/lib/Serialization/ASTWriter.cpp @@ -5167,8 +5167,9 @@ void ASTRecordWriter::AddAttr(const Attr *A) { // FIXME: Clang can't handle the serialization/deserialization of // preferred_name properly now. See // https://github.com/llvm/llvm-project/issues/56490 for example. - if (!A || (isa<PreferredNameAttr>(A) && - Writer->isWritingStdCXXNamedModules())) + if (!A || + (isa<PreferredNameAttr>(A) && (Writer->isWritingStdCXXNamedModules() || + Writer->isWritingStdCXXHeaderUnit()))) return Record.push_back(0); Record.push_back(A->getKind() + 1); // FIXME: stable encoding, target attrs |