Skip to content

Commit 217241f

Browse files
authored
Merge pull request swiftlang#28090 from eeckstein/fix-demangler
demangler: fix printing of partial apply forwarder with objc/nonobjc attributes
2 parents f50f091 + 77a50f7 commit 217241f

File tree

2 files changed

+4
-2
lines changed

2 files changed

+4
-2
lines changed

lib/Demangling/NodePrinter.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1487,7 +1487,7 @@ NodePointer NodePrinter::print(NodePointer Node, bool asPrefixContext) {
14871487

14881488
if (Node->hasChildren()) {
14891489
Printer << " for ";
1490-
print(Node->getFirstChild());
1490+
printChildren(Node);
14911491
}
14921492
return nullptr;
14931493
case Node::Kind::PartialApplyObjCForwarder:
@@ -1498,7 +1498,7 @@ NodePointer NodePrinter::print(NodePointer Node, bool asPrefixContext) {
14981498

14991499
if (Node->hasChildren()) {
15001500
Printer << " for ";
1501-
print(Node->getFirstChild());
1501+
printChildren(Node);
15021502
}
15031503
return nullptr;
15041504
case Node::Kind::KeyPathGetterThunkHelper:

test/Demangle/Inputs/manglings.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -352,3 +352,5 @@ $s18resilient_protocol24ResilientDerivedProtocolPxAA0c4BaseE0Tn --> associated c
352352
$s3red4testyAA3ResOyxSayq_GAEs5ErrorAAq_sAFHD1__HCg_GADyxq_GsAFR_r0_lF --> red.test<A, B where B: Swift.Error>(red.Res<A, B>) -> red.Res<A, [B]>
353353
$s3red4testyAA7OurTypeOy4them05TheirD0Vy5AssocQzGAjE0F8ProtocolAAxAA0c7DerivedH0HD1_AA0c4BaseH0HI1_AieKHA2__HCg_GxmAaLRzlF ---> red.test<A where A: red.OurDerivedProtocol>(A.Type) -> red.OurType<them.TheirType<A.Assoc>>
354354
$s17property_wrappers10WithTuplesV9fractionsSd_S2dtvpfP --> property wrapper backing initializer of property_wrappers.WithTuples.fractions : (Swift.Double, Swift.Double, Swift.Double)
355+
$sSo17OS_dispatch_queueC4sync7executeyyyXE_tFTOTA ---> {T:$sSo17OS_dispatch_queueC4sync7executeyyyXE_tFTO} partial apply forwarder for @nonobjc __C.OS_dispatch_queue.sync(execute: () -> ()) -> ()
356+

0 commit comments

Comments
 (0)