Create deprecated MutableList.sort extensions to guide how to replace them.

#KT-15790 Fixed
This commit is contained in:
Ilya Gorbunov
2017-01-18 21:16:49 +03:00
parent 6e2ebaa300
commit 3a1ed41436
3 changed files with 21 additions and 4 deletions
@@ -5,9 +5,15 @@ abstract class A : MutableList<String> {
}
fun foo(x: MutableList<String>, y: java.util.ArrayList<String>, z: A, p: java.util.Comparator<in String>) {
// Resolved to extension with no parameters
x.sort(<!TOO_MANY_ARGUMENTS!>p<!>)
y.sort(<!TOO_MANY_ARGUMENTS!>p<!>)
x.<!DEPRECATION_ERROR!>sort<!>(p)
y.<!DEPRECATION_ERROR!>sort<!>(p)
z.sort(<!TOO_MANY_ARGUMENTS!>p<!>)
z.<!DEPRECATION_ERROR!>sort<!>(p)
}
fun bar(x: MutableList<String>, y: java.util.ArrayList<String>, z: A) {
x.<!DEPRECATION_ERROR!>sort<!> { a, b -> a.length - b.length }
y.<!DEPRECATION_ERROR!>sort<!> { a, b -> a.length - b.length }
z.<!DEPRECATION_ERROR!>sort<!> { a, b -> a.length - b.length }
}
@@ -1,5 +1,6 @@
package
public fun bar(/*0*/ x: kotlin.collections.MutableList<kotlin.String>, /*1*/ y: java.util.ArrayList<kotlin.String>, /*2*/ z: A): kotlin.Unit
public fun foo(/*0*/ x: kotlin.collections.MutableList<kotlin.String>, /*1*/ y: java.util.ArrayList<kotlin.String>, /*2*/ z: A, /*3*/ p: java.util.Comparator<in kotlin.String>): kotlin.Unit
public abstract class A : kotlin.collections.MutableList<kotlin.String> {