[FE] Add additional test for marking with warnings a call resolve of which is going to be changed
This commit is contained in:
committed by
teamcity
parent
39d13442be
commit
38913b68b2
+16
@@ -0,0 +1,16 @@
|
||||
// WITH_STDLIB
|
||||
|
||||
class Foo<T>
|
||||
|
||||
class Bar<T>
|
||||
|
||||
fun <T> Bar<T>.takeFoo(foo: Foo<out Any?>): Int = 1
|
||||
|
||||
class Inv<O>
|
||||
|
||||
fun <K : <!FINAL_UPPER_BOUND!>Inv<out Inv<out Int>><!>> main() {
|
||||
fun <T, S : <!UNRESOLVED_REFERENCE!>T<!>> Bar<T>.takeFoo(foo: Foo<in S>): String = ""
|
||||
|
||||
val foo = Foo<K>()
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Int")!>Bar<Inv<in Inv<in Number>>>().takeFoo(foo)<!>
|
||||
}
|
||||
+16
@@ -0,0 +1,16 @@
|
||||
// WITH_STDLIB
|
||||
|
||||
class Foo<T>
|
||||
|
||||
class Bar<T>
|
||||
|
||||
fun <T> Bar<T>.takeFoo(foo: Foo<out Any?>): Int = 1
|
||||
|
||||
class Inv<O>
|
||||
|
||||
fun <K : <!FINAL_UPPER_BOUND!>Inv<out Inv<out Int>><!>> main() {
|
||||
fun <T, S : T> Bar<T>.takeFoo(foo: Foo<in S>): String = ""
|
||||
|
||||
val foo = Foo<K>()
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.String")!>Bar<Inv<in Inv<in Number>>>().<!INFERRED_TYPE_VARIABLE_INTO_EMPTY_INTERSECTION_WARNING!>takeFoo<!>(foo)<!>
|
||||
}
|
||||
+25
@@ -0,0 +1,25 @@
|
||||
package
|
||||
|
||||
public fun </*0*/ K : Inv<out Inv<out kotlin.Int>>> main(): kotlin.Unit
|
||||
public fun </*0*/ T> Bar<T>.takeFoo(/*0*/ foo: Foo<out kotlin.Any?>): kotlin.Int
|
||||
|
||||
public final class Bar</*0*/ T> {
|
||||
public constructor Bar</*0*/ T>()
|
||||
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 final class Foo</*0*/ T> {
|
||||
public constructor Foo</*0*/ T>()
|
||||
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 final class Inv</*0*/ O> {
|
||||
public constructor Inv</*0*/ O>()
|
||||
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
|
||||
}
|
||||
Vendored
+17
@@ -0,0 +1,17 @@
|
||||
// !LANGUAGE: +ForbidInferringTypeVariablesIntoEmptyIntersection
|
||||
// WITH_STDLIB
|
||||
|
||||
class Foo<T>
|
||||
|
||||
class Bar<T>
|
||||
|
||||
fun <T> Bar<T>.takeFoo(foo: Foo<out Any?>): Int = 1
|
||||
|
||||
class Inv<O>
|
||||
|
||||
fun <K : <!FINAL_UPPER_BOUND!>Inv<out Inv<out Int>><!>> main() {
|
||||
fun <T, S : <!UNRESOLVED_REFERENCE!>T<!>> Bar<T>.takeFoo(foo: Foo<in S>): String = ""
|
||||
|
||||
val foo = Foo<K>()
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Int")!>Bar<Inv<in Inv<in Number>>>().takeFoo(foo)<!>
|
||||
}
|
||||
+17
@@ -0,0 +1,17 @@
|
||||
// !LANGUAGE: +ForbidInferringTypeVariablesIntoEmptyIntersection
|
||||
// WITH_STDLIB
|
||||
|
||||
class Foo<T>
|
||||
|
||||
class Bar<T>
|
||||
|
||||
fun <T> Bar<T>.takeFoo(foo: Foo<out Any?>): Int = 1
|
||||
|
||||
class Inv<O>
|
||||
|
||||
fun <K : <!FINAL_UPPER_BOUND!>Inv<out Inv<out Int>><!>> main() {
|
||||
fun <T, S : T> Bar<T>.takeFoo(foo: Foo<in S>): String = ""
|
||||
|
||||
val foo = Foo<K>()
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Int")!>Bar<Inv<in Inv<in Number>>>().takeFoo(foo)<!>
|
||||
}
|
||||
Vendored
+25
@@ -0,0 +1,25 @@
|
||||
package
|
||||
|
||||
public fun </*0*/ K : Inv<out Inv<out kotlin.Int>>> main(): kotlin.Unit
|
||||
public fun </*0*/ T> Bar<T>.takeFoo(/*0*/ foo: Foo<out kotlin.Any?>): kotlin.Int
|
||||
|
||||
public final class Bar</*0*/ T> {
|
||||
public constructor Bar</*0*/ T>()
|
||||
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 final class Foo</*0*/ T> {
|
||||
public constructor Foo</*0*/ T>()
|
||||
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 final class Inv</*0*/ O> {
|
||||
public constructor Inv</*0*/ O>()
|
||||
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
|
||||
}
|
||||
Reference in New Issue
Block a user