File tree Expand file tree Collapse file tree 1 file changed +9
-10
lines changed Expand file tree Collapse file tree 1 file changed +9
-10
lines changed Original file line number Diff line number Diff line change @@ -5560,8 +5560,12 @@ case TypeKind::Id:
5560
5560
anyChanged = true ;
5561
5561
}
5562
5562
5563
- elements.push_back (transformedEltTy);
5564
- ++Index;
5563
+ if (auto *transformedPack = transformedEltTy->getAs <PackType>()) {
5564
+ elements.append (transformedPack->getElementTypes ().begin (),
5565
+ transformedPack->getElementTypes ().end ());
5566
+ } else {
5567
+ elements.push_back (transformedEltTy);
5568
+ }
5565
5569
}
5566
5570
5567
5571
if (!anyChanged)
@@ -5698,17 +5702,12 @@ case TypeKind::Id:
5698
5702
anyChanged = true ;
5699
5703
}
5700
5704
5701
- if (eltTy->isTypeSequenceParameter () &&
5702
- transformedEltTy->is <PackType>()) {
5703
- assert (anyChanged);
5704
- // Splat the tuple in by copying in all of the transformed elements.
5705
- auto tuple = dyn_cast<PackType>(transformedEltTy.getPointer ());
5706
- elements.append (tuple->getElementTypes ().begin (),
5707
- tuple->getElementTypes ().end ());
5705
+ if (auto *transformedPack = transformedEltTy->getAs <PackType>()) {
5706
+ elements.append (transformedPack->getElementTypes ().begin (),
5707
+ transformedPack->getElementTypes ().end ());
5708
5708
} else {
5709
5709
// Add the new tuple element, with the transformed type.
5710
5710
elements.push_back (elt.getWithType (transformedEltTy));
5711
- ++Index;
5712
5711
}
5713
5712
}
5714
5713
You can’t perform that action at this time.
0 commit comments