Skip to content

Commit 82f8db2

Browse files
committed
SILGen: Assert that conformances are complete instead of skipping them
1 parent 6095fd3 commit 82f8db2

File tree

1 file changed

+6
-8
lines changed

1 file changed

+6
-8
lines changed

lib/SILGen/SILGenType.cpp

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1060,10 +1060,9 @@ class SILGenType : public TypeMemberVisitor<SILGenType> {
10601060
// are existential and do not have witness tables.
10611061
for (auto *conformance : theType->getLocalConformances(
10621062
ConformanceLookupKind::NonInherited)) {
1063-
if (conformance->isComplete()) {
1064-
if (auto *normal = dyn_cast<NormalProtocolConformance>(conformance))
1065-
SGM.getWitnessTable(normal);
1066-
}
1063+
assert(conformance->isComplete());
1064+
if (auto *normal = dyn_cast<NormalProtocolConformance>(conformance))
1065+
SGM.getWitnessTable(normal);
10671066
}
10681067
}
10691068

@@ -1183,10 +1182,9 @@ class SILGenExtension : public TypeMemberVisitor<SILGenExtension> {
11831182
// extension.
11841183
for (auto *conformance : e->getLocalConformances(
11851184
ConformanceLookupKind::All)) {
1186-
if (conformance->isComplete()) {
1187-
if (auto *normal =dyn_cast<NormalProtocolConformance>(conformance))
1188-
SGM.getWitnessTable(normal);
1189-
}
1185+
assert(conformance->isComplete());
1186+
if (auto *normal =dyn_cast<NormalProtocolConformance>(conformance))
1187+
SGM.getWitnessTable(normal);
11901188
}
11911189
}
11921190
}

0 commit comments

Comments
 (0)