mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
[ABI] Mangling for default associated conformance accessors.
Default associated conformance accessors will be used in default witness tables to fill in associated conformances for defaulted associated types. Add (de|re|)mangling support for them and make them linking entities in IRGen.
This commit is contained in:
@@ -323,6 +323,7 @@ private:
|
||||
case Node::Kind::DeclContext:
|
||||
case Node::Kind::DefaultArgumentInitializer:
|
||||
case Node::Kind::DefaultAssociatedTypeMetadataAccessor:
|
||||
case Node::Kind::DefaultAssociatedConformanceAccessor:
|
||||
case Node::Kind::DependentAssociatedTypeRef:
|
||||
case Node::Kind::DependentGenericSignature:
|
||||
case Node::Kind::DependentGenericParamCount:
|
||||
@@ -1564,6 +1565,14 @@ NodePointer NodePrinter::print(NodePointer Node, bool asPrefixContext) {
|
||||
Printer << ": ";
|
||||
print(Node->getChild(2));
|
||||
return nullptr;
|
||||
case Node::Kind::DefaultAssociatedConformanceAccessor:
|
||||
Printer << "default associated conformance accessor for ";
|
||||
print(Node->getChild(0));
|
||||
Printer << ".";
|
||||
print(Node->getChild(1));
|
||||
Printer << ": ";
|
||||
print(Node->getChild(2));
|
||||
return nullptr;
|
||||
case Node::Kind::AssociatedTypeDescriptor:
|
||||
Printer << "associated type descriptor for ";
|
||||
print(Node->getChild(0));
|
||||
|
||||
Reference in New Issue
Block a user