Skip to content

Commit e2febea

Browse files
committed
Demangle an OpaqueArchetypeTypeRef's ID as a type not as a symbol
1 parent 352c4c2 commit e2febea

File tree

2 files changed

+2
-1
lines changed

2 files changed

+2
-1
lines changed

docs/ABI/Mangling.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -653,6 +653,7 @@ Types
653653
type ::= assoc-type-name 'Qz' // shortcut for 'Qyz'
654654
type ::= assoc-type-list 'QY' GENERIC-PARAM-INDEX // associated type at depth
655655
type ::= assoc-type-list 'QZ' // shortcut for 'QYz'
656+
type ::= opaque-type-decl-name bound-generic-args 'Qo' INDEX // opaque type
656657
657658
#if SWIFT_RUNTIME_VERSION >= 5.2
658659
type ::= type assoc-type-name 'Qx' // associated type relative to base `type`

stdlib/public/Reflection/TypeRef.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -974,7 +974,7 @@ class DemanglingForTypeRef
974974
}
975975

976976
Demangle::NodePointer visitOpaqueArchetypeTypeRef(const OpaqueArchetypeTypeRef *O) {
977-
auto decl = Dem.demangleSymbol(O->getID());
977+
auto decl = Dem.demangleType(O->getID());
978978
if (!decl)
979979
return nullptr;
980980

0 commit comments

Comments
 (0)