Files
kotlin-fork/compiler/testData/diagnostics/tests/generics/innerClasses/j+k.kt
T
Denis Zharkov deea0643ad Refine type arguments resolution and rendering
In case of type constructors captured parameters from outer classes

 #KT-5510 Fixed
 #KT-3112 Fixed
 #KT-6325 Fixed
 #KT-408  Fixed
 #KT-6337 Fixed
2015-11-13 14:47:28 +03:00

29 lines
613 B
Kotlin
Vendored

// !CHECK_TYPE
// !DIAGNOSTICS: -UNUSED_EXPRESSION -UNUSED_PARAMETER
// FILE: Outer.java
public class Outer<E> {
public class Inner<F> {
E foo() {}
F bar() {}
Outer<E> outer() {}
}
Inner<E> baz() { }
void set(Inner<String> x) {}
}
// FILE: main.kt
fun main() {
var outerStr: Outer<String> = Outer()
outerStr.baz().checkType { _<Outer<String>.Inner<String>>() }
val strInt: Outer<String>.Inner<Int> = outerStr.Inner()
strInt.foo().checkType { _<String>() }
strInt.bar().checkType { _<Int>() }
strInt.outer().checkType { _<Outer<String>>() }
}