[IR] Fix mangling generic properties from IR-based descriptors
For type parameters of generic properties, `DeclarationDescriptor#getContainingDeclaration` must return the property descriptor instead of the accessor function descriptor. ^KT-57436 Fixed
This commit is contained in:
committed by
Space Team
parent
5f1976c450
commit
5d3fe7547a
@@ -1,5 +1,5 @@
|
||||
// MUTE_SIGNATURE_COMPARISON_K2: ANY
|
||||
// ^ KT-57436
|
||||
// MUTE_SIGNATURE_COMPARISON_K2: JS_IR
|
||||
// ^ KT-57818
|
||||
|
||||
class C<T>
|
||||
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
// MUTE_SIGNATURE_COMPARISON_K2: ANY
|
||||
// ^ KT-57754, KT-57436
|
||||
// ^ KT-57754
|
||||
|
||||
interface I {
|
||||
val <T> T.id: T
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
// FIR_IDENTICAL
|
||||
|
||||
// MUTE_SIGNATURE_COMPARISON_K2: ANY
|
||||
// ^ KT-57436
|
||||
// MUTE_SIGNATURE_COMPARISON_K2: JS_IR
|
||||
// ^ KT-57818
|
||||
|
||||
val test1 get() = 42
|
||||
|
||||
|
||||
+2
-2
@@ -1,7 +1,7 @@
|
||||
// FIR_IDENTICAL
|
||||
|
||||
// MUTE_SIGNATURE_COMPARISON_K2: ANY
|
||||
// ^ KT-57436
|
||||
// MUTE_SIGNATURE_COMPARISON_K2: JS_IR
|
||||
// ^ KT-57818
|
||||
|
||||
class Test1<T : U, U>
|
||||
|
||||
|
||||
Vendored
+1
-1
@@ -1,5 +1,5 @@
|
||||
// MUTE_SIGNATURE_COMPARISON_K2: ANY
|
||||
// ^ KT-57429, KT-57436
|
||||
// ^ KT-57429
|
||||
|
||||
open class L<LL>(val ll: LL)
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
// FIR_IDENTICAL
|
||||
|
||||
// MUTE_SIGNATURE_COMPARISON_K2: ANY
|
||||
// ^ KT-57436
|
||||
// MUTE_SIGNATURE_COMPARISON_K2: JS_IR
|
||||
// ^ KT-57818
|
||||
|
||||
fun <T> castFun(x: Any) = x as T
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
// FIR_IDENTICAL
|
||||
|
||||
// MUTE_SIGNATURE_COMPARISON_K2: ANY
|
||||
// ^ KT-57436
|
||||
// MUTE_SIGNATURE_COMPARISON_K2: JS_IR
|
||||
// ^ KT-57818
|
||||
|
||||
val <T> T.id get() = this
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// MUTE_SIGNATURE_COMPARISON_K2: ANY
|
||||
// ^ KT-57436
|
||||
// MUTE_SIGNATURE_COMPARISON_K2: JS_IR
|
||||
// ^ KT-57818
|
||||
|
||||
inline fun <reified T : Any> Any.test1(): T? =
|
||||
if (this is T) this else null
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
// FIR_IDENTICAL
|
||||
|
||||
// MUTE_SIGNATURE_COMPARISON_K2: ANY
|
||||
// ^KT-57436
|
||||
// MUTE_SIGNATURE_COMPARISON_K2: JS_IR
|
||||
// ^ KT-57818
|
||||
|
||||
inline fun <reified T : Any> classRefFun() = T::class
|
||||
|
||||
|
||||
@@ -1,6 +1,3 @@
|
||||
// MUTE_SIGNATURE_COMPARISON_K2: ANY
|
||||
// ^ KT-57436
|
||||
|
||||
import C.f
|
||||
import C.p
|
||||
import C.ext
|
||||
|
||||
+3
-2
@@ -1,6 +1,7 @@
|
||||
// FIR_IDENTICAL
|
||||
// MUTE_SIGNATURE_COMPARISON_K2: ANY
|
||||
// ^ KT-57429
|
||||
|
||||
// MUTE_SIGNATURE_COMPARISON_K2: JS_IR
|
||||
// ^ KT-57818
|
||||
|
||||
val <T : CharSequence> T.gk: () -> T
|
||||
get() = { -> this }
|
||||
|
||||
@@ -1,9 +1,5 @@
|
||||
// IGNORE_BACKEND: JS_IR
|
||||
// IGNORE_BACKEND: JS_IR_ES6
|
||||
|
||||
// MUTE_SIGNATURE_COMPARISON_K2: ANY
|
||||
// ^ KT-57436
|
||||
|
||||
interface CPointed
|
||||
|
||||
inline fun <reified T : CPointed> CPointed.reinterpret(): T = TODO()
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
// !LANGUAGE: -ForbidUsingExtensionPropertyTypeParameterInDelegate
|
||||
|
||||
// MUTE_SIGNATURE_COMPARISON_K2: ANY
|
||||
// ^ KT-57429, KT-57436
|
||||
// ^ KT-57429
|
||||
|
||||
import kotlin.reflect.KProperty1
|
||||
import kotlin.reflect.KMutableProperty1
|
||||
|
||||
Reference in New Issue
Block a user