Skip to content

Commit 625a7c7

Browse files
authored
Merge pull request #26476 from Azoy/fix-tuple-metadata-crash
[Runtime] Fix crash on tuple metadata dump
2 parents d86fec9 + ab5ef84 commit 625a7c7

File tree

1 file changed

+9
-3
lines changed

1 file changed

+9
-3
lines changed

stdlib/public/runtime/Metadata.cpp

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3952,9 +3952,15 @@ void Metadata::dump() const {
39523952
printf("Kind: %s.\n", getStringForMetadataKind(getKind()).data());
39533953
printf("Value Witnesses: %p.\n", getValueWitnesses());
39543954

3955-
auto *contextDescriptor = getTypeContextDescriptor();
3956-
printf("Name: %s.\n", contextDescriptor->Name.get());
3957-
printf("Type Context Description: %p.\n", contextDescriptor);
3955+
if (auto *contextDescriptor = getTypeContextDescriptor()) {
3956+
printf("Name: %s.\n", contextDescriptor->Name.get());
3957+
printf("Type Context Description: %p.\n", contextDescriptor);
3958+
}
3959+
3960+
if (auto *tuple = dyn_cast<TupleTypeMetadata>(this)) {
3961+
printf("Labels: %s.\n", tuple->Labels);
3962+
}
3963+
39583964
printf("Generic Args: %p.\n", getGenericArgs());
39593965

39603966
#if SWIFT_OBJC_INTEROP

0 commit comments

Comments
 (0)