Skip to content

Commit 13c6611

Browse files
committed
RequirementMachine: Use recordConflict() in concretizeNestedTypesFromConcreteParent()
Instead of calling markConflicting() directly, use the existing recordConflict() utility.
1 parent a8a281d commit 13c6611

File tree

1 file changed

+2
-11
lines changed

1 file changed

+2
-11
lines changed

lib/AST/RequirementMachine/ConcreteTypeWitness.cpp

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -152,17 +152,8 @@ void PropertyMap::concretizeNestedTypesFromConcreteParent(
152152
// There is no relation between P and C here.
153153
//
154154
// With concrete types, a missing conformance is a conflict.
155-
if (requirementKind == RequirementKind::SameType) {
156-
// FIXME: Diagnose conflict
157-
auto &concreteRule = System.getRule(concreteRuleID);
158-
if (concreteRule.getRHS().size() == key.size())
159-
concreteRule.markConflicting();
160-
161-
auto &conformanceRule = System.getRule(conformanceRuleID);
162-
if (!conformanceRule.isIdentityConformanceRule() &&
163-
conformanceRule.getRHS().size() == key.size())
164-
conformanceRule.markConflicting();
165-
}
155+
if (requirementKind == RequirementKind::SameType)
156+
System.recordConflict(conformanceRuleID, concreteRuleID);
166157

167158
if (Debug.contains(DebugFlags::ConcretizeNestedTypes)) {
168159
llvm::dbgs() << "^^ " << concreteType << " does not conform to "

0 commit comments

Comments
 (0)