Fix ambiguity between Java and Kotlin SAM candidates

Because of incorrect flag we generated synthetic SAM candidates and got ambiguity when feature `SamConversionPerArgument` was enabled (Gradle case) because candidates for Java were duplicated

 #KT-35579 Fixed
This commit is contained in:
Mikhail Zarechenskiy
2019-12-23 10:06:27 +03:00
parent 99e02665b5
commit e078282767
7 changed files with 100 additions and 2 deletions
@@ -0,0 +1,26 @@
// !LANGUAGE: +NewInference +SamConversionForKotlinFunctions +SamConversionPerArgument
// !DIAGNOSTICS: -UNUSED_PARAMETER,-UNUSED_VARIABLE
// FILE: Action.java
public interface Action<T> {
void execute(T t);
}
// FILE: Other.java
// It's important that this is Java
public interface Other {
void pluginManagement(Action<? super Number> pluginManagementSpec);
}
// FILE: test.kt
interface B {
fun pluginManagement(block: Number.() -> Unit): Unit {}
}
interface C : B, Other
fun test(c: C) {
c.pluginManagement {
}
}