[FIR] Apply BAD testData changes after type parameters support

This commit is contained in:
simon.ogorodnik
2020-04-07 00:49:03 +03:00
parent 132c8ee210
commit 0e21ac8ed2
8 changed files with 17 additions and 18 deletions
@@ -1,3 +1,4 @@
// IGNORE_BACKEND_FIR: JVM_IR
// !LANGUAGE: +NewInference +FunctionReferenceWithDefaultValueAsOtherType
// WITH_RUNTIME
// KJS_WITH_FULL_RUNTIME
@@ -34,9 +34,9 @@ fun main() {
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Outer<CharSequence>.Inner<CharSequence>>(outer.bar())
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Outer<CharSequence>.Inner<CharSequence>>(outer.Inner())
outer.set(outer.bar())
outer.set(outer.Inner())
outer.<!INAPPLICABLE_CANDIDATE!>set<!>(outer.bar())
outer.<!INAPPLICABLE_CANDIDATE!>set<!>(outer.Inner())
val x: Outer<String>.Inner<String> = factoryString()
outer.set(x)
outer.<!INAPPLICABLE_CANDIDATE!>set<!>(x)
}
@@ -9,7 +9,7 @@ class Outer<T> {
x.checkType { <!INAPPLICABLE_CANDIDATE!>_<!><Inner>() }
x.checkType { _<Outer<String>.Inner>() }
z.checkType { _<Inner>() }
z.checkType { _<Outer<T>.Inner>() }
z.checkType { <!INAPPLICABLE_CANDIDATE!>_<!><Outer<T>.Inner>() }
inner = x
}
@@ -28,9 +28,9 @@ fun main() {
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Outer<CharSequence>.Inner>(outer.bar())
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Outer<CharSequence>.Inner>(outer.Inner())
outer.set(outer.bar())
outer.set(outer.Inner())
outer.<!INAPPLICABLE_CANDIDATE!>set<!>(outer.bar())
outer.<!INAPPLICABLE_CANDIDATE!>set<!>(outer.Inner())
val x: Outer<String>.Inner = factoryString()
outer.set(x)
outer.<!INAPPLICABLE_CANDIDATE!>set<!>(x)
}
@@ -1,2 +0,0 @@
Failures detected in FirBodyResolveTransformerAdapter, file: /simpleIn.fir.kt
Cause: java.lang.RuntimeException: While resolving call R|<local>/outer|.set#(R?C|/infer|<R|kotlin/Any|>(String()))
@@ -28,13 +28,13 @@ fun main() {
checkSubtype<Outer<String>.Inner>(outer.bar())
checkSubtype<Outer<String>.Inner>(outer.Inner())
outer.set(outer.bar())
outer.set(outer.Inner())
outer.<!INAPPLICABLE_CANDIDATE!>set<!>(outer.bar())
outer.<!INAPPLICABLE_CANDIDATE!>set<!>(outer.Inner())
val x: Outer<String>.Inner = factoryString()
outer.set(x)
outer.<!INAPPLICABLE_CANDIDATE!>set<!>(x)
val y: Outer<CharSequence>.Inner = infer<CharSequence>("")
outer.set(y)
outer.<!INAPPLICABLE_CANDIDATE!>set<!>(y)
outer.set(infer<Any>(""))
}
@@ -11,6 +11,6 @@ fun <T> listOf(): List<T> = null!!
// Unresolved reference is ok here:
// we can't create a substituted signature for type alias constructor
// since it has 'out' type projection in 'in' position.
val test1 = <!UNRESOLVED_REFERENCE!>BOutIn<!>(listOf(), null!!)
val test1 = BOutIn(listOf(), null!!)
val test2 = <!UNRESOLVED_REFERENCE!>BInIn<!>(listOf(), null!!)
val test2 = BInIn(listOf(), null!!)
@@ -8,8 +8,8 @@ typealias CIn = C<in Int>
typealias COut = C<out Int>
typealias CT<T> = C<T>
val test1 = <!UNRESOLVED_REFERENCE!>CStar<!>()
val test2 = <!UNRESOLVED_REFERENCE!>CIn<!>()
val test3 = <!UNRESOLVED_REFERENCE!>COut<!>()
val test1 = CStar()
val test2 = CIn()
val test3 = COut()
val test4 = CT<*>()
val test5 = CT<CT<*>>()