Revert "[NI] Disable capturing/approximation type in TypeSubstitutor with enabled NI"

This reverts commit 7c4101e21c.

 #KT-31866 Fixed
 #KT-31868 Fixed
 #EA-125401 Fixed
 #KT-25290 Open
This commit is contained in:
Mikhail Zarechenskiy
2019-06-04 17:41:43 +03:00
parent f48640f91c
commit 787a8bb9bd
79 changed files with 197 additions and 887 deletions
@@ -1,29 +0,0 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER
// !WITH_NEW_INFERENCE
// FILE: JavaFace.java
public interface JavaFace<T> {
void singleMethod();
}
// FILE: JavaFaceUser.java
public class JavaFaceUser<T> {
public <X> void use1(JavaFace<X> face) {}
public void use2(JavaFace<T> face) {}
}
// FILE: KotlinSamUser.kt
fun JavaFaceUser<out Any>.useOut() {
use1<Any> {}
use2 {}
}
fun JavaFaceUser<in Any>.useIn() {
use1<Any> {}
use2 {}
}
fun JavaFaceUser<Any>.useInv() {
use1<Any> {}
use2 {}
}
@@ -1,21 +0,0 @@
package
public fun JavaFaceUser<in kotlin.Any>.useIn(): kotlin.Unit
public fun JavaFaceUser<kotlin.Any>.useInv(): kotlin.Unit
public fun JavaFaceUser<out kotlin.Any>.useOut(): kotlin.Unit
public interface JavaFace</*0*/ T : kotlin.Any!> {
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public abstract fun singleMethod(): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public open class JavaFaceUser</*0*/ T : kotlin.Any!> {
public constructor JavaFaceUser</*0*/ T : kotlin.Any!>()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
public open fun </*0*/ X : kotlin.Any!> use1(/*0*/ face: JavaFace<X!>!): kotlin.Unit
public open fun use2(/*0*/ face: JavaFace<T!>!): kotlin.Unit
}