Refine member scope for types with projections
Instead of erasing descriptors with conflicting substitution, use invariant CapturedType(<projection>) as replacement for type parameter within default member scope. After substitution leave such types 'as is' everywhere except return types, use common approximation for them. #KT-9294 In Progress #KT-5411 Fixed #KT-8647 Fixed #KT-9462 Fixed #KT-9893 Fixed #KT-7581 Fixed #KT-7296 In Progress
This commit is contained in:
@@ -0,0 +1,13 @@
|
||||
fun test(mc: MutableCollection<out CharSequence>) {
|
||||
mc.addAll(<!TYPE_MISMATCH!>mc<!>)
|
||||
|
||||
mc.addAll(<!TYPE_MISMATCH!>arrayListOf<CharSequence>()<!>)
|
||||
mc.addAll(arrayListOf())
|
||||
|
||||
mc.addAll(<!TYPE_INFERENCE_EXPECTED_TYPE_MISMATCH!>listOf("")<!>)
|
||||
mc.addAll(<!TYPE_MISMATCH!>listOf<String>("")<!>)
|
||||
mc.addAll(<!TYPE_MISMATCH!>listOf<CharSequence>("")<!>)
|
||||
|
||||
mc.addAll(emptyList())
|
||||
mc.addAll(emptyList<Nothing>())
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
package
|
||||
|
||||
public fun test(/*0*/ mc: kotlin.MutableCollection<out kotlin.CharSequence>): kotlin.Unit
|
||||
Reference in New Issue
Block a user