[FIR] Report deprecations on typealias constructor calls
Typealias constructor calls are now always wrapped with synthetic FirConstructorCalls so that the referenced typeAlias can be extracted. Previously, it was only necessary to map type arguments. #KT-57780 Fixed
This commit is contained in:
committed by
Space Team
parent
b9e5b8a087
commit
2de9480101
@@ -1,17 +0,0 @@
|
||||
@Deprecated("Deprecated class")
|
||||
open class DeprecatedClass
|
||||
|
||||
open class WithDeprecatedCtor(val x: Int) {
|
||||
@Deprecated("Deprecated constructor")
|
||||
constructor() : this(0)
|
||||
}
|
||||
|
||||
typealias DeprecatedClassAlias = <!DEPRECATION!>DeprecatedClass<!>
|
||||
typealias WithDeprecatedCtorAlias = WithDeprecatedCtor
|
||||
typealias ArrayListOfDeprecatedClass = ArrayList<<!DEPRECATION!>DeprecatedClass<!>>
|
||||
|
||||
class Test1 : <!TYPEALIAS_EXPANSION_DEPRECATION!>DeprecatedClassAlias<!>()
|
||||
|
||||
class Test2 : <!DEPRECATION!>WithDeprecatedCtorAlias<!>()
|
||||
|
||||
val test3 = ArrayListOfDeprecatedClass()
|
||||
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
@Deprecated("Deprecated class")
|
||||
open class DeprecatedClass
|
||||
|
||||
@@ -11,7 +12,9 @@ typealias WithDeprecatedCtorAlias = WithDeprecatedCtor
|
||||
typealias ArrayListOfDeprecatedClass = ArrayList<<!DEPRECATION!>DeprecatedClass<!>>
|
||||
|
||||
class Test1 : <!TYPEALIAS_EXPANSION_DEPRECATION!>DeprecatedClassAlias<!>()
|
||||
val test1_1 = <!TYPEALIAS_EXPANSION_DEPRECATION!>DeprecatedClassAlias<!>()
|
||||
|
||||
class Test2 : <!TYPEALIAS_EXPANSION_DEPRECATION!>WithDeprecatedCtorAlias<!>()
|
||||
val test2_1 = <!TYPEALIAS_EXPANSION_DEPRECATION!>WithDeprecatedCtorAlias<!>()
|
||||
|
||||
val test3 = <!TYPEALIAS_EXPANSION_DEPRECATION!>ArrayListOfDeprecatedClass<!>()
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package
|
||||
|
||||
public val test1_1: DeprecatedClassAlias /* = DeprecatedClass */
|
||||
public val test2_1: WithDeprecatedCtorAlias /* = WithDeprecatedCtor */
|
||||
public val test3: ArrayListOfDeprecatedClass /* = java.util.ArrayList<DeprecatedClass> */
|
||||
|
||||
@kotlin.Deprecated(message = "Deprecated class") public open class DeprecatedClass {
|
||||
|
||||
@@ -1,24 +0,0 @@
|
||||
open class Base {
|
||||
companion object
|
||||
}
|
||||
interface IFoo
|
||||
open class CG<T>
|
||||
interface IG<T>
|
||||
|
||||
@Deprecated("Obsolete")
|
||||
typealias Obsolete = Base
|
||||
|
||||
@Deprecated("Obsolete")
|
||||
typealias IObsolete = IFoo
|
||||
|
||||
fun test1(x: <!DEPRECATION!>Obsolete<!>) = x
|
||||
fun test1a(x: List<<!DEPRECATION!>Obsolete<!>>) = x
|
||||
|
||||
val test2 = Obsolete()
|
||||
|
||||
val test3 = <!DEPRECATION!>Obsolete<!>
|
||||
|
||||
class Test4: <!DEPRECATION!>Obsolete<!>()
|
||||
class Test4a: <!DEPRECATION!>IObsolete<!>
|
||||
class Test4b: IG<<!DEPRECATION!>Obsolete<!>>
|
||||
class Test4c: CG<<!DEPRECATION!>Obsolete<!>>()
|
||||
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
open class Base {
|
||||
companion object
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user