[FIR-TEST] Add test with ambiguity produced by definitely not null types
This commit is contained in:
@@ -0,0 +1,21 @@
|
||||
// FILE: KtVisitor.java
|
||||
|
||||
public class KtVisitor<R, D> {}
|
||||
|
||||
// FILE: A.java
|
||||
|
||||
public interface A {
|
||||
public <R, D> R accept(@org.jetbrains.annotations.NotNull KtVisitor<R, D> visitor, D data)
|
||||
}
|
||||
|
||||
// FILE: B.kt
|
||||
|
||||
interface B : A {
|
||||
override fun <R, D> accept(visitor: KtVisitor<R, D>, data: D): R
|
||||
}
|
||||
|
||||
// FILE: main.kt
|
||||
|
||||
fun test(visitor: KtVisitor<String, Unit>, element: B) {
|
||||
element.<!AMBIGUITY!>accept<!>(visitor, Unit)
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
FILE: B.kt
|
||||
public abstract interface B : R|A| {
|
||||
public abstract override fun <R, D> accept(visitor: R|KtVisitor<R, D>|, data: R|D|): R|R|
|
||||
|
||||
}
|
||||
FILE: main.kt
|
||||
public final fun test(visitor: R|KtVisitor<kotlin/String, kotlin/Unit>|, element: R|B|): R|kotlin/Unit| {
|
||||
R|<local>/element|.<Ambiguity: accept, [/B.accept, /A.accept]>#(R|<local>/visitor|, Q|kotlin/Unit|)
|
||||
}
|
||||
+5
@@ -873,6 +873,11 @@ public class FirDiagnosticsTestGenerated extends AbstractFirDiagnosticsTest {
|
||||
runTest("compiler/fir/resolve/testData/resolve/problems/asImports.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("definitelyNotNullAmbiguity.kt")
|
||||
public void testDefinitelyNotNullAmbiguity() throws Exception {
|
||||
runTest("compiler/fir/resolve/testData/resolve/problems/definitelyNotNullAmbiguity.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("invokeOfLambdaWithReceiver.kt")
|
||||
public void testInvokeOfLambdaWithReceiver() throws Exception {
|
||||
runTest("compiler/fir/resolve/testData/resolve/problems/invokeOfLambdaWithReceiver.kt");
|
||||
|
||||
Reference in New Issue
Block a user