[NI] Resolve callable reference eagerly if there is only one candidate

#KT-30737 Fixed
This commit is contained in:
Mikhail Zarechenskiy
2019-04-04 03:02:53 +03:00
parent aa96a05469
commit 20a7f387bf
23 changed files with 420 additions and 16 deletions
@@ -2298,11 +2298,21 @@ public class FirDiagnosticsSmokeTestGenerated extends AbstractFirDiagnosticsSmok
KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/diagnostics/tests/callableReference/resolve"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.ANY, true);
}
@TestMetadata("ambiguityWhenNoApplicableCallableReferenceCandidate.kt")
public void testAmbiguityWhenNoApplicableCallableReferenceCandidate() throws Exception {
runTest("compiler/testData/diagnostics/tests/callableReference/resolve/ambiguityWhenNoApplicableCallableReferenceCandidate.kt");
}
@TestMetadata("ambiguousWithVararg.kt")
public void testAmbiguousWithVararg() throws Exception {
runTest("compiler/testData/diagnostics/tests/callableReference/resolve/ambiguousWithVararg.kt");
}
@TestMetadata("applicableCallableReferenceFromDistantScope.kt")
public void testApplicableCallableReferenceFromDistantScope() throws Exception {
runTest("compiler/testData/diagnostics/tests/callableReference/resolve/applicableCallableReferenceFromDistantScope.kt");
}
@TestMetadata("byArgType.kt")
public void testByArgType() throws Exception {
runTest("compiler/testData/diagnostics/tests/callableReference/resolve/byArgType.kt");
@@ -2318,11 +2328,26 @@ public class FirDiagnosticsSmokeTestGenerated extends AbstractFirDiagnosticsSmok
runTest("compiler/testData/diagnostics/tests/callableReference/resolve/byValType.kt");
}
@TestMetadata("commonSupertypeFromReturnTypesOfCallableReference.kt")
public void testCommonSupertypeFromReturnTypesOfCallableReference() throws Exception {
runTest("compiler/testData/diagnostics/tests/callableReference/resolve/commonSupertypeFromReturnTypesOfCallableReference.kt");
}
@TestMetadata("constructor.kt")
public void testConstructor() throws Exception {
runTest("compiler/testData/diagnostics/tests/callableReference/resolve/constructor.kt");
}
@TestMetadata("eagerAndPostponedCallableReferences.kt")
public void testEagerAndPostponedCallableReferences() throws Exception {
runTest("compiler/testData/diagnostics/tests/callableReference/resolve/eagerAndPostponedCallableReferences.kt");
}
@TestMetadata("eagerResolveOfSingleCallableReference.kt")
public void testEagerResolveOfSingleCallableReference() throws Exception {
runTest("compiler/testData/diagnostics/tests/callableReference/resolve/eagerResolveOfSingleCallableReference.kt");
}
@TestMetadata("innerClassConstructorOnOuterClassInstance.kt")
public void testInnerClassConstructorOnOuterClassInstance() throws Exception {
runTest("compiler/testData/diagnostics/tests/callableReference/resolve/innerClassConstructorOnOuterClassInstance.kt");
@@ -2393,6 +2418,11 @@ public class FirDiagnosticsSmokeTestGenerated extends AbstractFirDiagnosticsSmok
runTest("compiler/testData/diagnostics/tests/callableReference/resolve/overloadsMember.kt");
}
@TestMetadata("postponedResolveOfManyCallableReference.kt")
public void testPostponedResolveOfManyCallableReference() throws Exception {
runTest("compiler/testData/diagnostics/tests/callableReference/resolve/postponedResolveOfManyCallableReference.kt");
}
@TestMetadata("resolveEqualsOperatorWithAnyExpectedType.kt")
public void testResolveEqualsOperatorWithAnyExpectedType() throws Exception {
runTest("compiler/testData/diagnostics/tests/callableReference/resolve/resolveEqualsOperatorWithAnyExpectedType.kt");