[FIR] Apply BAD testData changes after type parameters support
This commit is contained in:
+1
@@ -1,3 +1,4 @@
|
|||||||
|
// IGNORE_BACKEND_FIR: JVM_IR
|
||||||
// !LANGUAGE: +NewInference +FunctionReferenceWithDefaultValueAsOtherType
|
// !LANGUAGE: +NewInference +FunctionReferenceWithDefaultValueAsOtherType
|
||||||
// WITH_RUNTIME
|
// WITH_RUNTIME
|
||||||
// KJS_WITH_FULL_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.bar())
|
||||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Outer<CharSequence>.Inner<CharSequence>>(outer.Inner())
|
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Outer<CharSequence>.Inner<CharSequence>>(outer.Inner())
|
||||||
|
|
||||||
outer.set(outer.bar())
|
outer.<!INAPPLICABLE_CANDIDATE!>set<!>(outer.bar())
|
||||||
outer.set(outer.Inner())
|
outer.<!INAPPLICABLE_CANDIDATE!>set<!>(outer.Inner())
|
||||||
|
|
||||||
val x: Outer<String>.Inner<String> = factoryString()
|
val x: Outer<String>.Inner<String> = factoryString()
|
||||||
outer.set(x)
|
outer.<!INAPPLICABLE_CANDIDATE!>set<!>(x)
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -9,7 +9,7 @@ class Outer<T> {
|
|||||||
x.checkType { <!INAPPLICABLE_CANDIDATE!>_<!><Inner>() }
|
x.checkType { <!INAPPLICABLE_CANDIDATE!>_<!><Inner>() }
|
||||||
x.checkType { _<Outer<String>.Inner>() }
|
x.checkType { _<Outer<String>.Inner>() }
|
||||||
z.checkType { _<Inner>() }
|
z.checkType { _<Inner>() }
|
||||||
z.checkType { _<Outer<T>.Inner>() }
|
z.checkType { <!INAPPLICABLE_CANDIDATE!>_<!><Outer<T>.Inner>() }
|
||||||
|
|
||||||
inner = x
|
inner = x
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -28,9 +28,9 @@ fun main() {
|
|||||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Outer<CharSequence>.Inner>(outer.bar())
|
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Outer<CharSequence>.Inner>(outer.bar())
|
||||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Outer<CharSequence>.Inner>(outer.Inner())
|
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Outer<CharSequence>.Inner>(outer.Inner())
|
||||||
|
|
||||||
outer.set(outer.bar())
|
outer.<!INAPPLICABLE_CANDIDATE!>set<!>(outer.bar())
|
||||||
outer.set(outer.Inner())
|
outer.<!INAPPLICABLE_CANDIDATE!>set<!>(outer.Inner())
|
||||||
|
|
||||||
val x: Outer<String>.Inner = factoryString()
|
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.bar())
|
||||||
checkSubtype<Outer<String>.Inner>(outer.Inner())
|
checkSubtype<Outer<String>.Inner>(outer.Inner())
|
||||||
|
|
||||||
outer.set(outer.bar())
|
outer.<!INAPPLICABLE_CANDIDATE!>set<!>(outer.bar())
|
||||||
outer.set(outer.Inner())
|
outer.<!INAPPLICABLE_CANDIDATE!>set<!>(outer.Inner())
|
||||||
|
|
||||||
val x: Outer<String>.Inner = factoryString()
|
val x: Outer<String>.Inner = factoryString()
|
||||||
outer.set(x)
|
outer.<!INAPPLICABLE_CANDIDATE!>set<!>(x)
|
||||||
val y: Outer<CharSequence>.Inner = infer<CharSequence>("")
|
val y: Outer<CharSequence>.Inner = infer<CharSequence>("")
|
||||||
outer.set(y)
|
outer.<!INAPPLICABLE_CANDIDATE!>set<!>(y)
|
||||||
|
|
||||||
outer.set(infer<Any>(""))
|
outer.set(infer<Any>(""))
|
||||||
}
|
}
|
||||||
|
|||||||
+2
-2
@@ -11,6 +11,6 @@ fun <T> listOf(): List<T> = null!!
|
|||||||
// Unresolved reference is ok here:
|
// Unresolved reference is ok here:
|
||||||
// we can't create a substituted signature for type alias constructor
|
// we can't create a substituted signature for type alias constructor
|
||||||
// since it has 'out' type projection in 'in' position.
|
// 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!!)
|
||||||
+3
-3
@@ -8,8 +8,8 @@ typealias CIn = C<in Int>
|
|||||||
typealias COut = C<out Int>
|
typealias COut = C<out Int>
|
||||||
typealias CT<T> = C<T>
|
typealias CT<T> = C<T>
|
||||||
|
|
||||||
val test1 = <!UNRESOLVED_REFERENCE!>CStar<!>()
|
val test1 = CStar()
|
||||||
val test2 = <!UNRESOLVED_REFERENCE!>CIn<!>()
|
val test2 = CIn()
|
||||||
val test3 = <!UNRESOLVED_REFERENCE!>COut<!>()
|
val test3 = COut()
|
||||||
val test4 = CT<*>()
|
val test4 = CT<*>()
|
||||||
val test5 = CT<CT<*>>()
|
val test5 = CT<CT<*>>()
|
||||||
Reference in New Issue
Block a user