mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
[Macros] Private discriminators for outermost-private MacroExpansionDecl (#64813)
Add a private discriminator to the mangling of an outermost-private `MacroExpansionDecl` so that declaration macros in different files won't have colliding macro expansion buffer names. rdar://107462515
This commit is contained in:
@@ -1506,7 +1506,7 @@ void SerializedASTFile::lookupValue(DeclName name, NLKind lookupKind,
|
||||
}
|
||||
|
||||
StringRef
|
||||
SerializedASTFile::getFilenameForPrivateDecl(const ValueDecl *decl) const {
|
||||
SerializedASTFile::getFilenameForPrivateDecl(const Decl *decl) const {
|
||||
return File.FilenamesForPrivateValues.lookup(decl);
|
||||
}
|
||||
|
||||
@@ -1688,8 +1688,8 @@ const clang::Module *SerializedASTFile::getUnderlyingClangModule() const {
|
||||
}
|
||||
|
||||
Identifier
|
||||
SerializedASTFile::getDiscriminatorForPrivateValue(const ValueDecl *D) const {
|
||||
Identifier discriminator = File.getDiscriminatorForPrivateValue(D);
|
||||
SerializedASTFile::getDiscriminatorForPrivateDecl(const Decl *D) const {
|
||||
Identifier discriminator = File.getDiscriminatorForPrivateDecl(D);
|
||||
assert(!discriminator.empty() && "no discriminator found for value");
|
||||
return discriminator;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user