Use ConstraintSystem.getPartialSubstitutor to get more correct substitution

This commit is contained in:
Valentin Kipyatkov
2015-09-07 19:18:53 +03:00
parent fe8447903e
commit 55558e2969
2 changed files with 3 additions and 5 deletions
@@ -310,9 +310,7 @@ class TypeInstantiationItems(
val substitutor = inheritorFuzzyType.checkIsSubtypeOf(expectedFuzzyType) ?: continue
if (!substitutor.isEmpty) {
val inheritorTypeSubstituted = substitutor.substitute(inheritorFuzzyType.type, Variance.INVARIANT)!!
if (!ErrorUtils.containsUninferredParameter(inheritorTypeSubstituted)) {
inheritorFuzzyType = FuzzyType(inheritorTypeSubstituted, freeParameters + inheritorFuzzyType.freeParameters)
}
inheritorFuzzyType = FuzzyType(inheritorTypeSubstituted, freeParameters + inheritorFuzzyType.freeParameters)
}
}