Skip to content

Commit aa91e43

Browse files
committed
[Type checker] Move simple cases over to resolveEquivalenceClass()
1 parent aee2211 commit aa91e43

File tree

1 file changed

+8
-6
lines changed

1 file changed

+8
-6
lines changed

lib/Sema/TypeCheckGeneric.cpp

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -222,14 +222,16 @@ bool CompleteGenericTypeResolver::areSameType(Type type1, Type type2) {
222222
if (!type1->hasTypeParameter() && !type2->hasTypeParameter())
223223
return type1->isEqual(type2);
224224

225-
auto pa1 =
226-
Builder.resolveArchetype(type1,
225+
auto equivClass1 =
226+
Builder.resolveEquivalenceClass(
227+
type1,
227228
ArchetypeResolutionKind::CompleteWellFormed);
228-
auto pa2 =
229-
Builder.resolveArchetype(type2,
229+
auto equivClass2 =
230+
Builder.resolveEquivalenceClass(
231+
type2,
230232
ArchetypeResolutionKind::CompleteWellFormed);
231-
if (pa1 && pa2)
232-
return pa1->isInSameEquivalenceClassAs(pa2);
233+
if (equivClass1 && equivClass2)
234+
return equivClass1 == equivClass2;
233235

234236
return type1->isEqual(type2);
235237
}

0 commit comments

Comments
 (0)