[NI] Initial support of "not enough information" diagnostic

#KT-30590 In Progress
This commit is contained in:
Mikhail Zarechenskiy
2019-04-22 00:18:20 +03:00
parent c1b586f921
commit 09cc2ae27f
11 changed files with 62 additions and 6 deletions
@@ -87,7 +87,7 @@ class KotlinConstraintSystemCompleter(
fixVariable(c, topLevelType, variableWithConstraints, postponedKtPrimitives)
if (!variableForFixation.hasProperConstraint) {
c.addError(NotEnoughInformationForTypeParameter(variableWithConstraints.typeVariable))
c.addError(NotEnoughInformationForTypeParameter(variableWithConstraints.typeVariable, topLevelAtoms.first()))
}
continue
}
@@ -101,7 +101,10 @@ class CapturedTypeFromSubtyping(
val position: ConstraintPosition
) : ConstraintSystemCallDiagnostic(INAPPLICABLE)
class NotEnoughInformationForTypeParameter(val typeVariable: TypeVariableMarker) : ConstraintSystemCallDiagnostic(INAPPLICABLE)
class NotEnoughInformationForTypeParameter(
val typeVariable: TypeVariableMarker,
val resolvedAtom: ResolvedAtom
) : ConstraintSystemCallDiagnostic(INAPPLICABLE)
class ConstrainingTypeIsError(
val typeVariable: TypeVariableMarker,