[NI] Support fixation to subtype in completion mode calculator

Allow full compltion mode for return type depending on type parameters in
contravariant position only if they have proper equality constraint.
This commit is contained in:
Pavel Kirpichenkov
2019-12-19 13:56:53 +03:00
parent e69e45e2a6
commit 384bd858e9
12 changed files with 178 additions and 13 deletions
@@ -10386,6 +10386,11 @@ public class DiagnosticsTestGenerated extends AbstractDiagnosticsTest {
runTest("compiler/testData/diagnostics/tests/inference/completion/basic.kt");
}
@TestMetadata("equalityConstraintUpstairs.kt")
public void testEqualityConstraintUpstairs() throws Exception {
runTest("compiler/testData/diagnostics/tests/inference/completion/equalityConstraintUpstairs.kt");
}
@TestMetadata("kt33166.kt")
public void testKt33166() throws Exception {
runTest("compiler/testData/diagnostics/tests/inference/completion/kt33166.kt");
@@ -10396,6 +10401,11 @@ public class DiagnosticsTestGenerated extends AbstractDiagnosticsTest {
runTest("compiler/testData/diagnostics/tests/inference/completion/partialForIlt.kt");
}
@TestMetadata("transitiveConstraint.kt")
public void testTransitiveConstraint() throws Exception {
runTest("compiler/testData/diagnostics/tests/inference/completion/transitiveConstraint.kt");
}
@TestMetadata("withExact.kt")
public void testWithExact() throws Exception {
runTest("compiler/testData/diagnostics/tests/inference/completion/withExact.kt");
@@ -10381,6 +10381,11 @@ public class DiagnosticsUsingJavacTestGenerated extends AbstractDiagnosticsUsing
runTest("compiler/testData/diagnostics/tests/inference/completion/basic.kt");
}
@TestMetadata("equalityConstraintUpstairs.kt")
public void testEqualityConstraintUpstairs() throws Exception {
runTest("compiler/testData/diagnostics/tests/inference/completion/equalityConstraintUpstairs.kt");
}
@TestMetadata("kt33166.kt")
public void testKt33166() throws Exception {
runTest("compiler/testData/diagnostics/tests/inference/completion/kt33166.kt");
@@ -10391,6 +10396,11 @@ public class DiagnosticsUsingJavacTestGenerated extends AbstractDiagnosticsUsing
runTest("compiler/testData/diagnostics/tests/inference/completion/partialForIlt.kt");
}
@TestMetadata("transitiveConstraint.kt")
public void testTransitiveConstraint() throws Exception {
runTest("compiler/testData/diagnostics/tests/inference/completion/transitiveConstraint.kt");
}
@TestMetadata("withExact.kt")
public void testWithExact() throws Exception {
runTest("compiler/testData/diagnostics/tests/inference/completion/withExact.kt");