[IR] Dump IdSignatures and mangled names in irText tests

The reason #1 for this feature is that we want to test IdSignatures
generated for declarations. Currently, there is no (easy) way to ensure
that a change in the signature building logic doesn't cause any breaking
changes wrt klibs.

Now, most IdSignatures include hashed mangled names in them, so even if
we catch a regression where the included hash changes, there would be no
way of knowing immediately what caused it, unless we'd also have mangled
names in the expectations.

The reason #2 is to test the manglers themselves. Currently, there are
no tests for them. They heavily duplicate each other, this is already
causing issues (see KT-57427) that would be very hard to catch without
these tests.

^KT-58238 Fixed
This commit is contained in:
Sergej Jaskiewicz
2023-04-06 15:07:36 +02:00
committed by Space Team
parent bccf69910d
commit 6e8283a6fe
791 changed files with 36162 additions and 357 deletions
@@ -1,6 +1,9 @@
// !LANGUAGE: +ContextReceivers
// TARGET_BACKEND: JVM_IR
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57435
data class MyContainer(var i: Int)
var operationScore = 0
@@ -0,0 +1,84 @@
// CHECK:
// Mangled name: {}operationScore
// Public signature: /operationScore|-9073278321118823634[0]
var operationScore: Int
// CHECK JVM_IR:
// Mangled name: #<get-operationScore>(){}kotlin.Int
// Public signature: /operationScore.<get-operationScore>|7107010356269447258[0]
get
// CHECK:
// Mangled name: #<set-operationScore>(kotlin.Int){}
// Public signature: /operationScore.<set-operationScore>|1936076120216071025[0]
set
// CHECK:
// Mangled name: MyContainer
// Public signature: /MyContainer|null[0]
data class MyContainer {
// CHECK:
// Mangled name: MyContainer{}i
// Public signature: /MyContainer.i|5014384761142332495[0]
var i: Int
// CHECK JVM_IR:
// Mangled name: MyContainer#<get-i>(){}kotlin.Int
// Public signature: /MyContainer.i.<get-i>|-8784396159001927527[0]
get
// CHECK:
// Mangled name: MyContainer#<set-i>(kotlin.Int){}
// Public signature: /MyContainer.i.<set-i>|1223530399758590178[0]
set
// CHECK:
// Mangled name: MyContainer#<init>(kotlin.Int){}
// Public signature: /MyContainer.<init>|-5182794243525578284[0]
constructor(i: Int) /* primary */
// CHECK JVM_IR:
// Mangled name: MyContainer#component1(){}kotlin.Int
// Public signature: /MyContainer.component1|-8217597213800111288[0]
operator fun component1(): Int
// CHECK JVM_IR:
// Mangled name: MyContainer#copy(kotlin.Int){}MyContainer
// Public signature: /MyContainer.copy|-2712595066263545556[0]
fun copy(i: Int): MyContainer
// CHECK JVM_IR:
// Mangled name: MyContainer#equals(kotlin.Any?){}kotlin.Boolean
// Public signature: /MyContainer.equals|722809408929142791[0]
override operator fun equals(other: Any?): Boolean
// CHECK JVM_IR:
// Mangled name: MyContainer#hashCode(){}kotlin.Int
// Public signature: /MyContainer.hashCode|-8048879360829830756[0]
override fun hashCode(): Int
// CHECK JVM_IR:
// Mangled name: MyContainer#toString(){}kotlin.String
// Public signature: /MyContainer.toString|6958853723545266802[0]
override fun toString(): String
}
// CHECK JVM_IR:
// Mangled name: #box(){}kotlin.String
// Public signature: /box|-9347091776561469[0]
fun box(): String
// CHECK JVM_IR:
// Mangled name computed from Ir: #get@MyContainer(kotlin.Int;kotlin.Int){}kotlin.Int
// Mangled name computed from Descriptor: #get!kotlin.Int@MyContainer(kotlin.Int){}kotlin.Int
// Public signature: /get|-3979760669169671321[0]
operator fun MyContainer.get($context_receiver_0: Int, index: Int): Int
// CHECK JVM_IR:
// Mangled name computed from Ir: #inc@MyContainer(kotlin.Int){}MyContainer
// Mangled name computed from Descriptor: #inc!kotlin.Int@MyContainer(){}MyContainer
// Public signature: /inc|-8228731243470619532[0]
operator fun MyContainer.inc($context_receiver_0: Int): MyContainer
// CHECK:
// Mangled name computed from Ir: #plusAssign@MyContainer(kotlin.Int;MyContainer){}
// Mangled name computed from Descriptor: #plusAssign!kotlin.Int@MyContainer(MyContainer){}
// Public signature: /plusAssign|677104996565540010[0]
operator fun MyContainer.plusAssign($context_receiver_0: Int, other: MyContainer): Unit
@@ -1,6 +1,9 @@
// !LANGUAGE: +ContextReceivers
// TARGET_BACKEND: JVM_IR
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57435
data class MyContainer(var s: String)
context(Int)
@@ -0,0 +1,65 @@
// CHECK:
// Mangled name: MyContainer
// Public signature: /MyContainer|null[0]
data class MyContainer {
// CHECK:
// Mangled name: MyContainer{}s
// Public signature: /MyContainer.s|7217541905509134881[0]
var s: String
// CHECK JVM_IR:
// Mangled name: MyContainer#<get-s>(){}kotlin.String
// Public signature: /MyContainer.s.<get-s>|4142379646177092803[0]
get
// CHECK:
// Mangled name: MyContainer#<set-s>(kotlin.String){}
// Public signature: /MyContainer.s.<set-s>|8225901422521337963[0]
set
// CHECK:
// Mangled name: MyContainer#<init>(kotlin.String){}
// Public signature: /MyContainer.<init>|1280618353163213788[0]
constructor(s: String) /* primary */
// CHECK JVM_IR:
// Mangled name: MyContainer#component1(){}kotlin.String
// Public signature: /MyContainer.component1|-7481405593404337796[0]
operator fun component1(): String
// CHECK JVM_IR:
// Mangled name: MyContainer#copy(kotlin.String){}MyContainer
// Public signature: /MyContainer.copy|-9194766205182052641[0]
fun copy(s: String): MyContainer
// CHECK JVM_IR:
// Mangled name: MyContainer#equals(kotlin.Any?){}kotlin.Boolean
// Public signature: /MyContainer.equals|722809408929142791[0]
override operator fun equals(other: Any?): Boolean
// CHECK JVM_IR:
// Mangled name: MyContainer#hashCode(){}kotlin.Int
// Public signature: /MyContainer.hashCode|-8048879360829830756[0]
override fun hashCode(): Int
// CHECK JVM_IR:
// Mangled name: MyContainer#toString(){}kotlin.String
// Public signature: /MyContainer.toString|6958853723545266802[0]
override fun toString(): String
}
// CHECK JVM_IR:
// Mangled name: #box(){}kotlin.String
// Public signature: /box|-9347091776561469[0]
fun box(): String
// CHECK JVM_IR:
// Mangled name computed from Ir: #get@MyContainer(kotlin.Int;kotlin.Int){}kotlin.String?
// Mangled name computed from Descriptor: #get!kotlin.Int@MyContainer(kotlin.Int){}kotlin.String?
// Public signature: /get|-262764729710480185[0]
operator fun MyContainer.get($context_receiver_0: Int, index: Int): String?
// CHECK:
// Mangled name computed from Ir: #set@MyContainer(kotlin.Int;kotlin.Int;kotlin.String){}
// Mangled name computed from Descriptor: #set!kotlin.Int@MyContainer(kotlin.Int;kotlin.String){}
// Public signature: /set|1694887052182048775[0]
operator fun MyContainer.set($context_receiver_0: Int, index: Int, value: String): Unit
@@ -1,8 +1,12 @@
// FIR_IDENTICAL
// !LANGUAGE: +ContextReceivers
// DUMP_LOCAL_DECLARATION_SIGNATURES
// IGNORE_BACKEND: JS_IR
// IGNORE_BACKEND: JS_IR_ES6
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57428, KT-57435
class Outer {
val x: Int = 1
}
@@ -0,0 +1,50 @@
// CHECK:
// Mangled name: Inner
// Public signature: /Inner|null[0]
class Inner {
// CHECK:
// Mangled name computed from Ir: Inner#<init>(Outer;kotlin.Any){}
// Mangled name computed from Descriptor: Inner#<init>!Outer(kotlin.Any){}
// Public signature: /Inner.<init>|7428094623108856579[0]
constructor($context_receiver_0: Outer, arg: Any) /* primary */
// CHECK:
// Mangled name computed from Ir: Inner.contextReceiverField0
// Mangled name computed from Descriptor: Inner{}contextReceiverField0#jf
private /* final field */ val contextReceiverField0: Outer
// CHECK JVM_IR:
// Mangled name: Inner#bar(){}kotlin.Int
// Public signature: /Inner.bar|-6436649210114349217[0]
fun bar(): Int
}
// CHECK:
// Mangled name: Outer
// Public signature: /Outer|null[0]
class Outer {
// CHECK:
// Mangled name: Outer{}x
// Public signature: /Outer.x|-8060530855978347579[0]
val x: Int
field
// CHECK JVM_IR:
// Mangled name: Outer#<get-x>(){}kotlin.Int
// Public signature: /Outer.x.<get-x>|4966956098150895696[0]
get
// CHECK:
// Mangled name: Outer#<init>(){}
// Public signature: /Outer.<init>|-5645683436151566731[0]
constructor() /* primary */
}
// CHECK:
// Mangled name: #f(Outer){}
// Public signature: /f|-90367846469451219[0]
fun f(outer: Outer): Unit
// CHECK JVM_IR:
// Mangled name: #f(Outer){}#<anonymous>#static@Outer(){}Inner
local fun Outer.<anonymous>(): Inner
@@ -1,6 +1,9 @@
// !LANGUAGE: +ContextReceivers
// TARGET_BACKEND: JVM_IR
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57435
data class Result(var i: Int)
var operationScore = 0
@@ -0,0 +1,114 @@
// CHECK:
// Mangled name: {}operationScore
// Public signature: /operationScore|-9073278321118823634[0]
var operationScore: Int
// CHECK JVM_IR:
// Mangled name: #<get-operationScore>(){}kotlin.Int
// Public signature: /operationScore.<get-operationScore>|7107010356269447258[0]
get
// CHECK:
// Mangled name: #<set-operationScore>(kotlin.Int){}
// Public signature: /operationScore.<set-operationScore>|1936076120216071025[0]
set
// CHECK:
// Mangled name: Result
// Public signature: /Result|null[0]
data class Result {
// CHECK:
// Mangled name: Result{}i
// Public signature: /Result.i|5014384761142332495[0]
var i: Int
// CHECK JVM_IR:
// Mangled name: Result#<get-i>(){}kotlin.Int
// Public signature: /Result.i.<get-i>|-8784396159001927527[0]
get
// CHECK:
// Mangled name: Result#<set-i>(kotlin.Int){}
// Public signature: /Result.i.<set-i>|1223530399758590178[0]
set
// CHECK:
// Mangled name: Result#<init>(kotlin.Int){}
// Public signature: /Result.<init>|-5182794243525578284[0]
constructor(i: Int) /* primary */
// CHECK JVM_IR:
// Mangled name: Result#component1(){}kotlin.Int
// Public signature: /Result.component1|-8217597213800111288[0]
operator fun component1(): Int
// CHECK JVM_IR:
// Mangled name: Result#copy(kotlin.Int){}Result
// Public signature: /Result.copy|5439238034196076859[0]
fun copy(i: Int): Result
// CHECK JVM_IR:
// Mangled name: Result#equals(kotlin.Any?){}kotlin.Boolean
// Public signature: /Result.equals|722809408929142791[0]
override operator fun equals(other: Any?): Boolean
// CHECK JVM_IR:
// Mangled name: Result#hashCode(){}kotlin.Int
// Public signature: /Result.hashCode|-8048879360829830756[0]
override fun hashCode(): Int
// CHECK JVM_IR:
// Mangled name: Result#toString(){}kotlin.String
// Public signature: /Result.toString|6958853723545266802[0]
override fun toString(): String
}
// CHECK JVM_IR:
// Mangled name: #box(){}kotlin.String
// Public signature: /box|-9347091776561469[0]
fun box(): String
// CHECK JVM_IR:
// Mangled name computed from Ir: #div@Result(kotlin.Int;Result){}Result
// Mangled name computed from Descriptor: #div!kotlin.Int@Result(Result){}Result
// Public signature: /div|4720798164978030724[0]
operator fun Result.div($context_receiver_0: Int, other: Result): Result
// CHECK:
// Mangled name computed from Ir: #divAssign@Result(kotlin.Int;Result){}
// Mangled name computed from Descriptor: #divAssign!kotlin.Int@Result(Result){}
// Public signature: /divAssign|2355297718303587055[0]
operator fun Result.divAssign($context_receiver_0: Int, other: Result): Unit
// CHECK JVM_IR:
// Mangled name computed from Ir: #minus@Result(kotlin.Int;Result){}Result
// Mangled name computed from Descriptor: #minus!kotlin.Int@Result(Result){}Result
// Public signature: /minus|3968749932240310139[0]
operator fun Result.minus($context_receiver_0: Int, other: Result): Result
// CHECK:
// Mangled name computed from Ir: #minusAssign@Result(kotlin.Int;Result){}
// Mangled name computed from Descriptor: #minusAssign!kotlin.Int@Result(Result){}
// Public signature: /minusAssign|5475976237961546392[0]
operator fun Result.minusAssign($context_receiver_0: Int, other: Result): Unit
// CHECK JVM_IR:
// Mangled name computed from Ir: #plus@Result(kotlin.Int;Result){}Result
// Mangled name computed from Descriptor: #plus!kotlin.Int@Result(Result){}Result
// Public signature: /plus|4903222358721452198[0]
operator fun Result.plus($context_receiver_0: Int, other: Result): Result
// CHECK:
// Mangled name computed from Ir: #plusAssign@Result(kotlin.Int;Result){}
// Mangled name computed from Descriptor: #plusAssign!kotlin.Int@Result(Result){}
// Public signature: /plusAssign|-1237264614376392652[0]
operator fun Result.plusAssign($context_receiver_0: Int, other: Result): Unit
// CHECK JVM_IR:
// Mangled name computed from Ir: #times@Result(kotlin.Int;Result){}Result
// Mangled name computed from Descriptor: #times!kotlin.Int@Result(Result){}Result
// Public signature: /times|3621876074874527655[0]
operator fun Result.times($context_receiver_0: Int, other: Result): Result
// CHECK:
// Mangled name computed from Ir: #timesAssign@Result(kotlin.Int;Result){}
// Mangled name computed from Descriptor: #timesAssign!kotlin.Int@Result(Result){}
// Public signature: /timesAssign|1025810528106719294[0]
operator fun Result.timesAssign($context_receiver_0: Int, other: Result): Unit
@@ -3,6 +3,9 @@
// IGNORE_BACKEND_K1: JS_IR
// IGNORE_BACKEND_K1: JS_IR_ES6
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57435
class Context {
fun foo() = 1
}
@@ -0,0 +1,42 @@
// CHECK:
// Mangled name: Context
// Public signature: /Context|null[0]
class Context {
// CHECK:
// Mangled name: Context#<init>(){}
// Public signature: /Context.<init>|-5645683436151566731[0]
constructor() /* primary */
// CHECK JVM_IR:
// Mangled name: Context#foo(){}kotlin.Int
// Public signature: /Context.foo|-1256155405684507276[0]
fun foo(): Int
}
// CHECK:
// Mangled name: Test
// Public signature: /Test|null[0]
class Test {
// CHECK:
// Mangled name computed from Ir: Test#<init>(Context){}
// Mangled name computed from Descriptor: Test#<init>!Context(){}
// Public signature: /Test.<init>|4848133296495274545[0]
constructor($context_receiver_0: Context) /* primary */
// CHECK:
// Mangled name computed from Ir: Test.contextReceiverField0
// Mangled name computed from Descriptor: Test{}contextReceiverField0#jf
private /* final field */ val contextReceiverField0: Context
// CHECK:
// Mangled name: Test#bar(){}
// Public signature: /Test.bar|496682602797471549[0]
fun bar(): Unit
// CHECK JVM_IR:
// Mangled name: Test#foo(){}kotlin.Int
// Public signature: /Test.foo|-1256155405684507276[0]
fun foo(): Int
}
@@ -0,0 +1,15 @@
// CHECK JVM_IR:
// Mangled name: #box(){}kotlin.String
// Public signature: /box|-9347091776561469[0]
fun box(): String
// CHECK JVM_IR:
// Mangled name: #callWithContext(kotlin.Function1<kotlin.String,kotlin.String>){}kotlin.String
// Public signature: /callWithContext|2869415620415030876[0]
fun callWithContext(f: Function1<String, String>): String
// CHECK JVM_IR:
// Mangled name: #withContext(kotlin.Function1<kotlin.String,kotlin.String>){}kotlin.String
// Public signature: /withContext|-1533357735492795771[0]
fun withContext(f: Function1<String, String>): String
@@ -1,6 +1,9 @@
// !LANGUAGE: +ContextReceivers
// TARGET_BACKEND: JVM_IR
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57435
class Context {
fun c() = 1
}
@@ -34,4 +37,4 @@ fun box(): String = with(Context()) {
result += 1.testInlineWithExtensionAndMultipleContextsAndArgs()
}
return if (result == 23) "OK" else "fail"
}
}
@@ -0,0 +1,71 @@
// CHECK:
// Mangled name: A
// Public signature: /A|null[0]
class A {
// CHECK:
// Mangled name: A{}a
// Public signature: /A.a|-1200697420457237799[0]
val a: Any?
// CHECK JVM_IR:
// Mangled name: A#<get-a>(){}kotlin.Any?
// Public signature: /A.a.<get-a>|-5253003527138676623[0]
get
// CHECK:
// Mangled name: A#<init>(kotlin.Any?){}
// Public signature: /A.<init>|-8205545948568413246[0]
constructor(a: Any?) /* primary */
}
// CHECK:
// Mangled name: Context
// Public signature: /Context|null[0]
class Context {
// CHECK:
// Mangled name: Context#<init>(){}
// Public signature: /Context.<init>|-5645683436151566731[0]
constructor() /* primary */
// CHECK JVM_IR:
// Mangled name: Context#c(){}kotlin.Int
// Public signature: /Context.c|-7090409735962961857[0]
fun c(): Int
}
// CHECK JVM_IR:
// Mangled name: #box(){}kotlin.String
// Public signature: /box|-9347091776561469[0]
fun box(): String
// CHECK JVM_IR:
// Mangled name computed from Ir: #testInline(Context){}kotlin.Int
// Mangled name computed from Descriptor: #testInline!Context(){}kotlin.Int
// Public signature: /testInline|2700554304824268037[0]
inline fun testInline($context_receiver_0: Context): Int
// CHECK JVM_IR:
// Mangled name computed from Ir: #testInlineWithArg(Context;kotlin.Int){}kotlin.Int
// Mangled name computed from Descriptor: #testInlineWithArg!Context(kotlin.Int){}kotlin.Int
// Public signature: /testInlineWithArg|9204994988875814257[0]
inline fun testInlineWithArg($context_receiver_0: Context, i: Int): Int
// CHECK JVM_IR:
// Mangled name computed from Ir: #testInlineWithExtensionAndArg@kotlin.Int(Context;kotlin.Int){}kotlin.Int
// Mangled name computed from Descriptor: #testInlineWithExtensionAndArg!Context@kotlin.Int(kotlin.Int){}kotlin.Int
// Public signature: /testInlineWithExtensionAndArg|-7753885706218316674[0]
inline fun Int.testInlineWithExtensionAndArg($context_receiver_0: Context, i: Int): Int
// CHECK JVM_IR:
// Mangled name computed from Ir: #testInlineWithExtensionAndMultipleArgs@kotlin.Int(Context;kotlin.Int;kotlin.Int){}kotlin.Int
// Mangled name computed from Descriptor: #testInlineWithExtensionAndMultipleArgs!Context@kotlin.Int(kotlin.Int;kotlin.Int){}kotlin.Int
// Public signature: /testInlineWithExtensionAndMultipleArgs|6839067967550411636[0]
inline fun Int.testInlineWithExtensionAndMultipleArgs($context_receiver_0: Context, i1: Int, i2: Int): Int
// CHECK JVM_IR:
// Mangled name computed from Ir: #testInlineWithExtensionAndMultipleContextsAndArgs@kotlin.Int(Context;A;kotlin.Int;kotlin.Int){}kotlin.Int
// Mangled name computed from Descriptor: #testInlineWithExtensionAndMultipleContextsAndArgs!Context!A@kotlin.Int(kotlin.Int;kotlin.Int){}kotlin.Int
// Public signature: /testInlineWithExtensionAndMultipleContextsAndArgs|4315160499148454711[0]
inline fun Int.testInlineWithExtensionAndMultipleContextsAndArgs($context_receiver_0: Context, $context_receiver_1: A, i1: Int, i2: Int): Int
@@ -1,8 +1,12 @@
// FIR_IDENTICAL
// !LANGUAGE: +ContextReceivers
// DUMP_LOCAL_DECLARATION_SIGNATURES
// IGNORE_BACKEND: JS_IR
// IGNORE_BACKEND: JS_IR_ES6
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57428, KT-57435
class O(val o: String)
context(O)
@@ -0,0 +1,65 @@
// CHECK:
// Mangled name: O
// Public signature: /O|null[0]
class O {
// CHECK:
// Mangled name: O{}o
// Public signature: /O.o|-5332571409865440260[0]
val o: String
field
// CHECK JVM_IR:
// Mangled name: O#<get-o>(){}kotlin.String
// Public signature: /O.o.<get-o>|2606027183154875572[0]
get
// CHECK:
// Mangled name: O#<init>(kotlin.String){}
// Public signature: /O.<init>|1280618353163213788[0]
constructor(o: String) /* primary */
}
// CHECK:
// Mangled name: OK
// Public signature: /OK|null[0]
class OK {
// CHECK:
// Mangled name: OK{}k
// Public signature: /OK.k|2162811783424158931[0]
val k: String
field
// CHECK JVM_IR:
// Mangled name: OK#<get-k>(){}kotlin.String
// Public signature: /OK.k.<get-k>|-8248201737917988340[0]
get
// CHECK:
// Mangled name: OK{}result
// Public signature: /OK.result|456251868630197251[0]
val result: String
field
// CHECK JVM_IR:
// Mangled name: OK#<get-result>(){}kotlin.String
// Public signature: /OK.result.<get-result>|8441547134620975366[0]
get
// CHECK:
// Mangled name computed from Ir: OK#<init>(O;kotlin.String){}
// Mangled name computed from Descriptor: OK#<init>!O(kotlin.String){}
// Public signature: /OK.<init>|-804847331171011326[0]
constructor($context_receiver_0: O, k: String) /* primary */
// CHECK:
// Mangled name computed from Ir: OK.contextReceiverField0
// Mangled name computed from Descriptor: OK{}contextReceiverField0#jf
private /* final field */ val contextReceiverField0: O
}
// CHECK JVM_IR:
// Mangled name: #box(){}kotlin.String
// Public signature: /box|-9347091776561469[0]
fun box(): String
// CHECK JVM_IR:
// Mangled name: #box(){}kotlin.String#<anonymous>#static@O(){}kotlin.String
local fun O.<anonymous>(): String
@@ -2,6 +2,9 @@
// TARGET_BACKEND: JVM_IR
// WITH_STDLIB
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57435
import kotlin.reflect.KProperty
var operationScore = 0
@@ -0,0 +1,83 @@
// CHECK:
// Mangled name: {}operationScore
// Public signature: /operationScore|-9073278321118823634[0]
var operationScore: Int
// CHECK JVM_IR:
// Mangled name: #<get-operationScore>(){}kotlin.Int
// Public signature: /operationScore.<get-operationScore>|7107010356269447258[0]
get
// CHECK:
// Mangled name: #<set-operationScore>(kotlin.Int){}
// Public signature: /operationScore.<set-operationScore>|1936076120216071025[0]
set
// CHECK:
// Mangled name: Delegate
// Public signature: /Delegate|null[0]
class Delegate {
// CHECK:
// Mangled name: Delegate{}delegateValue
// Public signature: /Delegate.delegateValue|-8268138023786011357[0]
var delegateValue: String
// CHECK JVM_IR:
// Mangled name: Delegate#<get-delegateValue>(){}kotlin.String
// Public signature: /Delegate.delegateValue.<get-delegateValue>|-8802990183041924458[0]
get
// CHECK:
// Mangled name: Delegate#<set-delegateValue>(kotlin.String){}
// Public signature: /Delegate.delegateValue.<set-delegateValue>|-6867110197203157583[0]
set
// CHECK:
// Mangled name: Delegate#<init>(){}
// Public signature: /Delegate.<init>|-5645683436151566731[0]
constructor() /* primary */
// CHECK JVM_IR:
// Mangled name computed from Ir: Delegate#getValue(kotlin.Int;kotlin.Any?;kotlin.reflect.KProperty<*>){}kotlin.String
// Mangled name computed from Descriptor: Delegate#getValue!kotlin.Int(kotlin.Any?;kotlin.reflect.KProperty<*>){}kotlin.String
// Public signature: /Delegate.getValue|-7764345795816801347[0]
operator fun getValue($context_receiver_0: Int, thisRef: Any?, property: KProperty<*>): String
// CHECK:
// Mangled name computed from Ir: Delegate#setValue(kotlin.Int;kotlin.Any?;kotlin.reflect.KProperty<*>;kotlin.String){}
// Mangled name computed from Descriptor: Delegate#setValue!kotlin.Int(kotlin.Any?;kotlin.reflect.KProperty<*>;kotlin.String){}
// Public signature: /Delegate.setValue|9105212648373628088[0]
operator fun setValue($context_receiver_0: Int, thisRef: Any?, property: KProperty<*>, value: String): Unit
}
// CHECK:
// Mangled name: Result
// Public signature: /Result|null[0]
class Result {
// CHECK:
// Mangled name: Result{}s
// Public signature: /Result.s|7217541905509134881[0]
var s: String /* by */
// CHECK JVM_IR:
// Mangled name: Result#<get-s>(){}kotlin.String
// Public signature: /Result.s.<get-s>|4142379646177092803[0]
get(): String
// CHECK:
// Mangled name: Result#<set-s>(kotlin.String){}
// Public signature: /Result.s.<set-s>|8225901422521337963[0]
set(<set-?>: String): Unit
// CHECK:
// Mangled name computed from Ir: Result#<init>(kotlin.Int){}
// Mangled name computed from Descriptor: Result#<init>!kotlin.Int(){}
// Public signature: /Result.<init>|-1392650824251324893[0]
constructor($context_receiver_0: Int) /* primary */
// CHECK:
// Mangled name computed from Ir: Result.contextReceiverField0
// Mangled name computed from Descriptor: Result{}contextReceiverField0#jf
private /* final field */ val contextReceiverField0: Int
}
// CHECK JVM_IR:
// Mangled name: #box(){}kotlin.String
// Public signature: /box|-9347091776561469[0]
fun box(): String
@@ -2,6 +2,9 @@
// !LANGUAGE: +ContextReceivers
// TARGET_BACKEND: JVM_IR
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57435
interface Canvas {
val suffix: String
}
@@ -0,0 +1,71 @@
// CHECK:
// Mangled name: Circle
// Public signature: /Circle|null[0]
class Circle : Shape {
// CHECK:
// Mangled name: Circle#<init>(){}
// Public signature: /Circle.<init>|-5645683436151566731[0]
constructor() /* primary */
// CHECK JVM_IR:
// Mangled name computed from Ir: Circle#draw(Canvas){}kotlin.String
// Mangled name computed from Descriptor: Circle#draw!Canvas(){}kotlin.String
// Public signature: /Circle.draw|-6733499063990640842[0]
override fun draw($context_receiver_0: Canvas): String
}
// CHECK:
// Mangled name: Canvas
// Public signature: /Canvas|null[0]
interface Canvas {
// CHECK:
// Mangled name: Canvas{}suffix
// Public signature: /Canvas.suffix|-3301965527200666288[0]
abstract val suffix: String
// CHECK JVM_IR:
// Mangled name: Canvas#<get-suffix>(){}kotlin.String
// Public signature: /Canvas.suffix.<get-suffix>|8958072538558116778[0]
abstract get
}
// CHECK:
// Mangled name: Shape
// Public signature: /Shape|null[0]
interface Shape {
// CHECK JVM_IR:
// Mangled name computed from Ir: Shape#draw(Canvas){}kotlin.String
// Mangled name computed from Descriptor: Shape#draw!Canvas(){}kotlin.String
// Public signature: /Shape.draw|-6733499063990640842[0]
abstract fun draw($context_receiver_0: Canvas): String
}
// CHECK:
// Mangled name: MyCanvas
// Public signature: /MyCanvas|null[0]
object MyCanvas : Canvas {
// CHECK:
// Mangled name: MyCanvas{}suffix
// Public signature: /MyCanvas.suffix|-3301965527200666288[0]
override val suffix: String
// CHECK JVM_IR:
// Mangled name: MyCanvas#<get-suffix>(){}kotlin.String
// Public signature: /MyCanvas.suffix.<get-suffix>|8958072538558116778[0]
override get
// CHECK:
// Mangled name: MyCanvas#<init>(){}
// Public signature: /MyCanvas.<init>|-5645683436151566731[0]
private constructor() /* primary */
}
// CHECK JVM_IR:
// Mangled name: #box(){}kotlin.String
// Public signature: /box|-9347091776561469[0]
fun box(): String
@@ -1,6 +1,9 @@
// !LANGUAGE: +ContextReceivers
// TARGET_BACKEND: JVM_IR
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57429, KT-57435
data class Pair<A, B>(val first: A, val second: B)
context(Comparator<T>)
@@ -0,0 +1,79 @@
// CHECK:
// Mangled name: Pair
// Public signature: /Pair|null[0]
data class Pair<A : Any?, B : Any?> {
// CHECK:
// Mangled name: Pair{}first
// Public signature: /Pair.first|1497393077339299626[0]
val first: A
// CHECK JVM_IR:
// Mangled name: Pair#<get-first>(){}1:0
// Public signature: /Pair.first.<get-first>|-2355525345180386541[0]
get
// CHECK:
// Mangled name: Pair{}second
// Public signature: /Pair.second|8934636033843101515[0]
val second: B
// CHECK JVM_IR:
// Mangled name: Pair#<get-second>(){}1:1
// Public signature: /Pair.second.<get-second>|-7108495346814383827[0]
get
// CHECK:
// Mangled name: Pair#<init>(1:0;1:1){}
// Public signature: /Pair.<init>|3086114026882374588[0]
constructor(first: A, second: B) /* primary */
// CHECK JVM_IR:
// Mangled name: Pair#component1(){}1:0
// Public signature: /Pair.component1|2393470133763651536[0]
operator fun component1(): A
// CHECK JVM_IR:
// Mangled name: Pair#component2(){}1:1
// Public signature: /Pair.component2|319033347667924570[0]
operator fun component2(): B
// CHECK JVM_IR:
// Mangled name: Pair#copy(1:0;1:1){}Pair<1:0,1:1>
// Public signature: /Pair.copy|7298985996422673194[0]
fun copy(first: A, second: B): Pair<A, B>
// CHECK JVM_IR:
// Mangled name: Pair#equals(kotlin.Any?){}kotlin.Boolean
// Public signature: /Pair.equals|722809408929142791[0]
override operator fun equals(other: Any?): Boolean
// CHECK JVM_IR:
// Mangled name: Pair#hashCode(){}kotlin.Int
// Public signature: /Pair.hashCode|-8048879360829830756[0]
override fun hashCode(): Int
// CHECK JVM_IR:
// Mangled name: Pair#toString(){}kotlin.String
// Public signature: /Pair.toString|6958853723545266802[0]
override fun toString(): String
}
// CHECK JVM_IR:
// Mangled name: #box(){}kotlin.String
// Public signature: /box|-9347091776561469[0]
fun box(): String
// CHECK JVM_IR:
// Mangled name computed from Ir: #compareTo@0:0(java.util.Comparator<0:0>;0:0){0§<kotlin.Any?>}kotlin.Int
// Mangled name computed from Descriptor: #compareTo!java.util.Comparator<0:0>@0:0(0:0){0§<kotlin.Any?>}kotlin.Int
// Public signature: /compareTo|-4091974102091923679[0]
infix operator fun <T : Any?> T.compareTo($context_receiver_0: Comparator<T>, other: T): Int
// CHECK:
// Mangled name: @Pair<0:0,0:0>{0§<kotlin.Any?>}min
// Public signature: /min|6885845668930107919[0]
val <T : Any?> Pair<T, T>.min: T
// CHECK JVM_IR:
// Mangled name computed from Ir: #<get-min>@Pair<0:0,0:0>(java.util.Comparator<0:0>){0§<kotlin.Any?>}0:0
// Mangled name computed from Descriptor: #<get-min>!java.util.Comparator<0:0>@Pair<0:0,0:0>(){0§<kotlin.Any?>}0:0
// Public signature: /min.<get-min>|6404877126791863503[0]
get($context_receiver_0: Comparator<T>): T
@@ -2,6 +2,9 @@
// TARGET_BACKEND: JVM_IR
// WITH_STDLIB
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57435
class View {
val coefficient = 42
}
@@ -0,0 +1,35 @@
// CHECK:
// Mangled name: View
// Public signature: /View|null[0]
class View {
// CHECK:
// Mangled name: View{}coefficient
// Public signature: /View.coefficient|4563127391682800227[0]
val coefficient: Int
// CHECK JVM_IR:
// Mangled name: View#<get-coefficient>(){}kotlin.Int
// Public signature: /View.coefficient.<get-coefficient>|2286291581442465794[0]
get
// CHECK:
// Mangled name: View#<init>(){}
// Public signature: /View.<init>|-5645683436151566731[0]
constructor() /* primary */
}
// CHECK JVM_IR:
// Mangled name: #box(){}kotlin.String
// Public signature: /box|-9347091776561469[0]
fun box(): String
// CHECK:
// Mangled name: @kotlin.Int{}dp
// Public signature: /dp|-4245635280375224248[0]
val Int.dp: Int
// CHECK JVM_IR:
// Mangled name computed from Ir: #<get-dp>@kotlin.Int(View){}kotlin.Int
// Mangled name computed from Descriptor: #<get-dp>!View@kotlin.Int(){}kotlin.Int
// Public signature: /dp.<get-dp>|933397372434095199[0]
get($context_receiver_0: View): Int
@@ -1,6 +1,9 @@
// !LANGUAGE: +ContextReceivers
// TARGET_BACKEND: JVM_IR
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57435
class Param
class O {
val o = "O"
@@ -0,0 +1,62 @@
// CHECK:
// Mangled name: K
// Public signature: /K|null[0]
class K {
// CHECK:
// Mangled name: K{}k
// Public signature: /K.k|2162811783424158931[0]
val k: String
// CHECK JVM_IR:
// Mangled name: K#<get-k>(){}kotlin.String
// Public signature: /K.k.<get-k>|-8248201737917988340[0]
get
// CHECK:
// Mangled name: K#<init>(){}
// Public signature: /K.<init>|-5645683436151566731[0]
constructor() /* primary */
}
// CHECK:
// Mangled name: O
// Public signature: /O|null[0]
class O {
// CHECK:
// Mangled name: O{}o
// Public signature: /O.o|-5332571409865440260[0]
val o: String
// CHECK JVM_IR:
// Mangled name: O#<get-o>(){}kotlin.String
// Public signature: /O.o.<get-o>|2606027183154875572[0]
get
// CHECK:
// Mangled name: O#<init>(){}
// Public signature: /O.<init>|-5645683436151566731[0]
constructor() /* primary */
}
// CHECK:
// Mangled name: Param
// Public signature: /Param|null[0]
class Param {
// CHECK:
// Mangled name: Param#<init>(){}
// Public signature: /Param.<init>|-5645683436151566731[0]
constructor() /* primary */
}
// CHECK JVM_IR:
// Mangled name: #box(){}kotlin.String
// Public signature: /box|-9347091776561469[0]
fun box(): String
// CHECK JVM_IR:
// Mangled name computed from Ir: #f@K(O;kotlin.Function3<O,K,Param,0:0>){0§<kotlin.Any?>}0:0
// Mangled name computed from Descriptor: #f!O@K(kotlin.Function3<O,K,Param,0:0>){0§<kotlin.Any?>}0:0
// Public signature: /f|-7653040485655702379[0]
fun <T : Any?> K.f($context_receiver_0: O, g: @ExtensionFunctionType Function3<O, K, Param, T>): T
@@ -2,6 +2,9 @@
// TARGET_BACKEND: JVM_IR
// WITH_STDLIB
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57435
interface Semigroup<T> {
infix fun T.combine(other: T): T
}
@@ -0,0 +1,93 @@
// CHECK:
// Mangled name: Monoid
// Public signature: /Monoid|null[0]
interface Monoid<T : Any?> : Semigroup<T> {
// CHECK JVM_IR:
// Mangled name: Monoid#combine@1:0(1:0){}1:0
// Public signature: /Monoid.combine|-3517256775590682507[0]
abstract /* fake */ override infix fun T.combine(other: T): T
// CHECK:
// Mangled name: Monoid{}unit
// Public signature: /Monoid.unit|-5200734743185576787[0]
abstract val unit: T
// CHECK JVM_IR:
// Mangled name: Monoid#<get-unit>(){}1:0
// Public signature: /Monoid.unit.<get-unit>|-2842189358620964971[0]
abstract get
}
// CHECK:
// Mangled name: Semigroup
// Public signature: /Semigroup|null[0]
interface Semigroup<T : Any?> {
// CHECK JVM_IR:
// Mangled name: Semigroup#combine@1:0(1:0){}1:0
// Public signature: /Semigroup.combine|-3517256775590682507[0]
abstract infix fun T.combine(other: T): T
}
// CHECK:
// Mangled name: IntMonoid
// Public signature: /IntMonoid|null[0]
object IntMonoid : Monoid<Int> {
// CHECK:
// Mangled name: IntMonoid{}unit
// Public signature: /IntMonoid.unit|-5200734743185576787[0]
override val unit: Int
// CHECK JVM_IR:
// Mangled name: IntMonoid#<get-unit>(){}kotlin.Int
// Public signature: /IntMonoid.unit.<get-unit>|3772729924213749256[0]
override get
// CHECK:
// Mangled name: IntMonoid#<init>(){}
// Public signature: /IntMonoid.<init>|-5645683436151566731[0]
private constructor() /* primary */
// CHECK JVM_IR:
// Mangled name: IntMonoid#combine@kotlin.Int(kotlin.Int){}kotlin.Int
// Public signature: /IntMonoid.combine|4765448259581317405[0]
override infix fun Int.combine(other: Int): Int
}
// CHECK:
// Mangled name: StringMonoid
// Public signature: /StringMonoid|null[0]
object StringMonoid : Monoid<String> {
// CHECK:
// Mangled name: StringMonoid{}unit
// Public signature: /StringMonoid.unit|-5200734743185576787[0]
override val unit: String
// CHECK JVM_IR:
// Mangled name: StringMonoid#<get-unit>(){}kotlin.String
// Public signature: /StringMonoid.unit.<get-unit>|4504480110251605077[0]
override get
// CHECK:
// Mangled name: StringMonoid#<init>(){}
// Public signature: /StringMonoid.<init>|-5645683436151566731[0]
private constructor() /* primary */
// CHECK JVM_IR:
// Mangled name: StringMonoid#combine@kotlin.String(kotlin.String){}kotlin.String
// Public signature: /StringMonoid.combine|-5815259829474546918[0]
override infix fun String.combine(other: String): String
}
// CHECK JVM_IR:
// Mangled name: #box(){}kotlin.String
// Public signature: /box|-9347091776561469[0]
fun box(): String
// CHECK JVM_IR:
// Mangled name computed from Ir: #sum@kotlin.collections.List<0:0>(Monoid<0:0>){0§<kotlin.Any?>}0:0
// Mangled name computed from Descriptor: #sum!Monoid<0:0>@kotlin.collections.List<0:0>(){0§<kotlin.Any?>}0:0
// Public signature: /sum|7635142307973834922[0]
fun <T : Any?> List<T>.sum($context_receiver_0: Monoid<T>): T
@@ -1,8 +1,12 @@
// FIR_IDENTICAL
// !LANGUAGE: +ContextReceivers
// DUMP_LOCAL_DECLARATION_SIGNATURES
// IGNORE_BACKEND: JS_IR
// IGNORE_BACKEND: JS_IR_ES6
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57428, KT-57435
class C {
val c = 42
}
@@ -0,0 +1,35 @@
// CHECK:
// Mangled name: C
// Public signature: /C|null[0]
class C {
// CHECK:
// Mangled name: C{}c
// Public signature: /C.c|-4416962153448040627[0]
val c: Int
field
// CHECK JVM_IR:
// Mangled name: C#<get-c>(){}kotlin.Int
// Public signature: /C.c.<get-c>|-2440337234483931882[0]
get
// CHECK:
// Mangled name: C#<init>(){}
// Public signature: /C.<init>|-5645683436151566731[0]
constructor() /* primary */
}
// CHECK:
// Mangled name: #bar(C){}
// Public signature: /bar|-380723744805794672[0]
fun bar(c: C): Unit
// CHECK:
// Mangled name: #bar(C){}#<anonymous>#static@C(){}
local fun C.<anonymous>(): Unit
// CHECK:
// Mangled name computed from Ir: #foo(C){}
// Mangled name computed from Descriptor: #foo!C(){}
// Public signature: /foo|-1491377105373055541[0]
fun foo($context_receiver_0: C): Unit
@@ -2,6 +2,9 @@
// IGNORE_BACKEND: JS_IR
// IGNORE_BACKEND: JS_IR_ES6
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57435
class Param
class C {
val c = 42
@@ -0,0 +1,80 @@
// CHECK:
// Mangled name: C
// Public signature: /C|null[0]
class C {
// CHECK:
// Mangled name: C{}c
// Public signature: /C.c|-4416962153448040627[0]
val c: Int
// CHECK JVM_IR:
// Mangled name: C#<get-c>(){}kotlin.Int
// Public signature: /C.c.<get-c>|-2440337234483931882[0]
get
// CHECK:
// Mangled name: C#<init>(){}
// Public signature: /C.<init>|-5645683436151566731[0]
constructor() /* primary */
}
// CHECK:
// Mangled name: Param
// Public signature: /Param|null[0]
class Param {
// CHECK:
// Mangled name: Param#<init>(){}
// Public signature: /Param.<init>|-5645683436151566731[0]
constructor() /* primary */
}
// CHECK:
// Mangled name: R
// Public signature: /R|null[0]
class R {
// CHECK:
// Mangled name: R{}r
// Public signature: /R.r|-8117627916896159533[0]
val r: Int
// CHECK JVM_IR:
// Mangled name: R#<get-r>(){}kotlin.Int
// Public signature: /R.r.<get-r>|4210912234201800356[0]
get
// CHECK:
// Mangled name: R#<init>(){}
// Public signature: /R.<init>|-5645683436151566731[0]
constructor() /* primary */
}
// CHECK:
// Mangled name computed from Ir: #f1@R(C;kotlin.Function3<C,R,Param,kotlin.Unit>){}
// Mangled name computed from Descriptor: #f1!C@R(kotlin.Function3<C,R,Param,kotlin.Unit>){}
// Public signature: /f1|-6159499595952586733[0]
fun R.f1($context_receiver_0: C, g: @ExtensionFunctionType Function3<C, R, Param, Unit>): Unit
// CHECK:
// Mangled name computed from Ir: #f2(C;kotlin.Function2<C,Param,kotlin.Unit>){}
// Mangled name computed from Descriptor: #f2!C(kotlin.Function2<C,Param,kotlin.Unit>){}
// Public signature: /f2|916795325728250836[0]
fun f2($context_receiver_0: C, g: Function2<C, Param, Unit>): Unit
// CHECK:
// Mangled name computed from Ir: #f3@R(C;kotlin.Function2<C,R,kotlin.Unit>){}
// Mangled name computed from Descriptor: #f3!C@R(kotlin.Function2<C,R,kotlin.Unit>){}
// Public signature: /f3|-4964362597990757320[0]
fun R.f3($context_receiver_0: C, g: @ExtensionFunctionType Function2<C, R, Unit>): Unit
// CHECK:
// Mangled name computed from Ir: #f4(C;kotlin.Function1<C,kotlin.Unit>){}
// Mangled name computed from Descriptor: #f4!C(kotlin.Function1<C,kotlin.Unit>){}
// Public signature: /f4|-1495265522536685659[0]
fun f4($context_receiver_0: C, g: Function1<C, Unit>): Unit
// CHECK:
// Mangled name: #test(){}
// Public signature: /test|6620506149988718649[0]
fun test(): Unit
@@ -4,6 +4,10 @@
// IGNORE_BACKEND_K1: JS_IR
// IGNORE_BACKEND_K1: JS_IR_ES6
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57429, KT-57435
context(T) class A<T>
context(Collection<P>) class B<P>
@@ -0,0 +1,42 @@
// CHECK:
// Mangled name: A
// Public signature: /A|null[0]
class A<T : Any?> {
// CHECK:
// Mangled name computed from Ir: A#<init>(1:0){}
// Mangled name computed from Descriptor: A#<init>!1:0(){}
// Public signature: /A.<init>|5547349096232763669[0]
constructor($context_receiver_0: T) /* primary */
// CHECK:
// Mangled name computed from Ir: A.contextReceiverField0
// Mangled name computed from Descriptor: A{}contextReceiverField0#jf
private /* final field */ val contextReceiverField0: T
}
// CHECK:
// Mangled name: B
// Public signature: /B|null[0]
class B<P : Any?> {
// CHECK:
// Mangled name computed from Ir: B#<init>(kotlin.collections.Collection<1:0>){}
// Mangled name computed from Descriptor: B#<init>!kotlin.collections.Collection<1:0>(){}
// Public signature: /B.<init>|-5453957848603821578[0]
constructor($context_receiver_0: Collection<P>) /* primary */
// CHECK:
// Mangled name computed from Ir: B.contextReceiverField0
// Mangled name computed from Descriptor: B{}contextReceiverField0#jf
private /* final field */ val contextReceiverField0: Collection<P>
}
// CHECK:
// Mangled name: #bar@kotlin.collections.Collection<kotlin.Int>(){}
// Public signature: /bar|-6231113953181180683[0]
fun Collection<Int>.bar(): Unit
// CHECK:
// Mangled name: #foo@kotlin.Int(){}
// Public signature: /foo|4521317896132265411[0]
fun Int.foo(): Unit
@@ -2,6 +2,9 @@
// TARGET_BACKEND: JVM_IR
// WITH_STDLIB
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57435
data class Counter(var i: Int = 0)
data class CounterConfig(val max: Int = 10)
@@ -0,0 +1,138 @@
// CHECK:
// Mangled name: Counter
// Public signature: /Counter|null[0]
data class Counter {
// CHECK:
// Mangled name: Counter{}i
// Public signature: /Counter.i|5014384761142332495[0]
var i: Int
// CHECK JVM_IR:
// Mangled name: Counter#<get-i>(){}kotlin.Int
// Public signature: /Counter.i.<get-i>|-8784396159001927527[0]
get
// CHECK:
// Mangled name: Counter#<set-i>(kotlin.Int){}
// Public signature: /Counter.i.<set-i>|1223530399758590178[0]
set
// CHECK:
// Mangled name: Counter#<init>(kotlin.Int){}
// Public signature: /Counter.<init>|-5182794243525578284[0]
constructor(i: Int) /* primary */
// CHECK JVM_IR:
// Mangled name: Counter#component1(){}kotlin.Int
// Public signature: /Counter.component1|-8217597213800111288[0]
operator fun component1(): Int
// CHECK JVM_IR:
// Mangled name: Counter#copy(kotlin.Int){}Counter
// Public signature: /Counter.copy|2961790952651150110[0]
fun copy(i: Int): Counter
// CHECK JVM_IR:
// Mangled name: Counter#equals(kotlin.Any?){}kotlin.Boolean
// Public signature: /Counter.equals|722809408929142791[0]
override operator fun equals(other: Any?): Boolean
// CHECK JVM_IR:
// Mangled name: Counter#hashCode(){}kotlin.Int
// Public signature: /Counter.hashCode|-8048879360829830756[0]
override fun hashCode(): Int
// CHECK JVM_IR:
// Mangled name: Counter#toString(){}kotlin.String
// Public signature: /Counter.toString|6958853723545266802[0]
override fun toString(): String
}
// CHECK:
// Mangled name: CounterConfig
// Public signature: /CounterConfig|null[0]
data class CounterConfig {
// CHECK:
// Mangled name: CounterConfig{}max
// Public signature: /CounterConfig.max|-4328207510034083913[0]
val max: Int
// CHECK JVM_IR:
// Mangled name: CounterConfig#<get-max>(){}kotlin.Int
// Public signature: /CounterConfig.max.<get-max>|3083068406880796820[0]
get
// CHECK:
// Mangled name: CounterConfig#<init>(kotlin.Int){}
// Public signature: /CounterConfig.<init>|-5182794243525578284[0]
constructor(max: Int) /* primary */
// CHECK JVM_IR:
// Mangled name: CounterConfig#component1(){}kotlin.Int
// Public signature: /CounterConfig.component1|-8217597213800111288[0]
operator fun component1(): Int
// CHECK JVM_IR:
// Mangled name: CounterConfig#copy(kotlin.Int){}CounterConfig
// Public signature: /CounterConfig.copy|-6936688204078599579[0]
fun copy(max: Int): CounterConfig
// CHECK JVM_IR:
// Mangled name: CounterConfig#equals(kotlin.Any?){}kotlin.Boolean
// Public signature: /CounterConfig.equals|722809408929142791[0]
override operator fun equals(other: Any?): Boolean
// CHECK JVM_IR:
// Mangled name: CounterConfig#hashCode(){}kotlin.Int
// Public signature: /CounterConfig.hashCode|-8048879360829830756[0]
override fun hashCode(): Int
// CHECK JVM_IR:
// Mangled name: CounterConfig#toString(){}kotlin.String
// Public signature: /CounterConfig.toString|6958853723545266802[0]
override fun toString(): String
}
// CHECK:
// Mangled name: CounterIterator
// Public signature: /CounterIterator|null[0]
class CounterIterator : Iterator<Int> {
// CHECK:
// Mangled name: CounterIterator{}counter
// Public signature: /CounterIterator.counter|3849500605769271673[0]
private val counter: Counter
// CHECK JVM_IR:
// Mangled name: CounterIterator#<get-counter>(){}Counter
// Public signature: /CounterIterator.counter.<get-counter>|-1972897806384113317[0]
private get
// CHECK:
// Mangled name computed from Ir: CounterIterator#<init>(CounterConfig;Counter){}
// Mangled name computed from Descriptor: CounterIterator#<init>!CounterConfig(Counter){}
// Public signature: /CounterIterator.<init>|4731448293962665986[0]
constructor($context_receiver_0: CounterConfig, counter: Counter) /* primary */
// CHECK:
// Mangled name computed from Ir: CounterIterator.contextReceiverField0
// Mangled name computed from Descriptor: CounterIterator{}contextReceiverField0#jf
private /* final field */ val contextReceiverField0: CounterConfig
// CHECK JVM_IR:
// Mangled name: CounterIterator#hasNext(){}kotlin.Boolean
// Public signature: /CounterIterator.hasNext|-8822308834813776763[0]
override operator fun hasNext(): Boolean
// CHECK JVM_IR:
// Mangled name: CounterIterator#next(){}kotlin.Int
// Public signature: /CounterIterator.next|-2200495694769701977[0]
override operator fun next(): Int
}
// CHECK JVM_IR:
// Mangled name: #box(){}kotlin.String
// Public signature: /box|-9347091776561469[0]
fun box(): String
// CHECK JVM_IR:
// Mangled name computed from Ir: #iterator@Counter(CounterConfig){}CounterIterator
// Mangled name computed from Descriptor: #iterator!CounterConfig@Counter(){}CounterIterator
// Public signature: /iterator|3723033021471264185[0]
operator fun Counter.iterator($context_receiver_0: CounterConfig): CounterIterator
@@ -2,5 +2,8 @@
// FIR_IDENTICAL
// TARGET_BACKEND: JVM_IR
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57435
context(Unit, Int)
class MyClass
class MyClass
@@ -0,0 +1,20 @@
// CHECK:
// Mangled name: MyClass
// Public signature: /MyClass|null[0]
class MyClass {
// CHECK:
// Mangled name computed from Ir: MyClass#<init>(kotlin.Unit;kotlin.Int){}
// Mangled name computed from Descriptor: MyClass#<init>!kotlin.Unit!kotlin.Int(){}
// Public signature: /MyClass.<init>|1062323742830185042[0]
constructor($context_receiver_0: Unit, $context_receiver_1: Int) /* primary */
// CHECK:
// Mangled name computed from Ir: MyClass.contextReceiverField0
// Mangled name computed from Descriptor: MyClass{}contextReceiverField0#jf
private /* final field */ val contextReceiverField0: Unit
// CHECK:
// Mangled name computed from Ir: MyClass.contextReceiverField1
// Mangled name computed from Descriptor: MyClass{}contextReceiverField1#jf
private /* final field */ val contextReceiverField1: Int
}
@@ -1,8 +1,12 @@
// FIR_IDENTICAL
// !LANGUAGE: +ContextReceivers
// DUMP_LOCAL_DECLARATION_SIGNATURES
// IGNORE_BACKEND: JS_IR
// IGNORE_BACKEND: JS_IR_ES6
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57428, KT-57435
interface Lazy<T>
context(Lazy<Int>, Lazy<CharSequence>)
@@ -0,0 +1,64 @@
// CHECK:
// Mangled name: Lazy
// Public signature: /Lazy|null[0]
interface Lazy<T : Any?> {
}
// CHECK:
// Mangled name: #f(Lazy<kotlin.Int>;Lazy<kotlin.CharSequence>;Lazy<0:0>;Lazy<Lazy<0:0>>){0§<kotlin.Any?>}
// Public signature: /f|-6064829949850642050[0]
fun <T : Any?> f(lazy1: Lazy<Int>, lazy2: Lazy<CharSequence>, lazyT: Lazy<T>, lazyLazyT: Lazy<Lazy<T>>): Unit
// CHECK:
// Mangled name: #f(Lazy<kotlin.Int>;Lazy<kotlin.CharSequence>;Lazy<1:0>;Lazy<Lazy<1:0>>){0§<kotlin.Any?>}#<anonymous>#static@Lazy<kotlin.Int>(){}
local fun Lazy<Int>.<anonymous>(): Unit
// CHECK:
// Mangled name: #f(Lazy<kotlin.Int>;Lazy<kotlin.CharSequence>;Lazy<2:0>;Lazy<Lazy<2:0>>){0§<kotlin.Any?>}#<anonymous>#static@Lazy<kotlin.Int>(){}#<anonymous>#static@Lazy<kotlin.CharSequence>(){}
local fun Lazy<CharSequence>.<anonymous>(): Unit
// CHECK:
// Mangled name: #f(Lazy<kotlin.Int>;Lazy<kotlin.CharSequence>;Lazy<1:0>;Lazy<Lazy<1:0>>){0§<kotlin.Any?>}#<anonymous>#static@Lazy<kotlin.CharSequence>(){}
local fun Lazy<CharSequence>.<anonymous>(): Unit
// CHECK:
// Mangled name: #f(Lazy<kotlin.Int>;Lazy<kotlin.CharSequence>;Lazy<2:0>;Lazy<Lazy<2:0>>){0§<kotlin.Any?>}#<anonymous>#static@Lazy<kotlin.CharSequence>(){}#<anonymous>#static@Lazy<kotlin.Int>(){}
local fun Lazy<Int>.<anonymous>(): Unit
// CHECK:
// Mangled name: #f(Lazy<kotlin.Int>;Lazy<kotlin.CharSequence>;Lazy<1:0>;Lazy<Lazy<1:0>>){0§<kotlin.Any?>}#<anonymous>#static@Lazy<1:0>(){}
local fun Lazy<T>.<anonymous>(): Unit
// CHECK:
// Mangled name: #f(Lazy<kotlin.Int>;Lazy<kotlin.CharSequence>;Lazy<2:0>;Lazy<Lazy<2:0>>){0§<kotlin.Any?>}#<anonymous>#static@Lazy<2:0>(){}#<anonymous>#static@Lazy<kotlin.Int>(){}
local fun Lazy<Int>.<anonymous>(): Unit
// CHECK:
// Mangled name: #f(Lazy<kotlin.Int>;Lazy<kotlin.CharSequence>;Lazy<1:0>;Lazy<Lazy<1:0>>){0§<kotlin.Any?>}#<anonymous>#static@Lazy<Lazy<1:0>>(){}
local fun Lazy<Lazy<T>>.<anonymous>(): Unit
// CHECK:
// Mangled name: #f(Lazy<kotlin.Int>;Lazy<kotlin.CharSequence>;Lazy<2:0>;Lazy<Lazy<2:0>>){0§<kotlin.Any?>}#<anonymous>#static@Lazy<Lazy<2:0>>(){}#<anonymous>#static@Lazy<kotlin.Int>(){}
local fun Lazy<Int>.<anonymous>(): Unit
// CHECK:
// Mangled name: #f(Lazy<kotlin.Int>;Lazy<kotlin.CharSequence>;Lazy<1:0>;Lazy<Lazy<1:0>>){0§<kotlin.Any?>}#<anonymous>#static@Lazy<kotlin.Int>(){}
local fun Lazy<Int>.<anonymous>(): Unit
// CHECK:
// Mangled name: #f(Lazy<kotlin.Int>;Lazy<kotlin.CharSequence>;Lazy<2:0>;Lazy<Lazy<2:0>>){0§<kotlin.Any?>}#<anonymous>#static@Lazy<kotlin.Int>(){}#<anonymous>#static@Lazy<Lazy<2:0>>(){}
local fun Lazy<Lazy<T>>.<anonymous>(): Unit
// CHECK:
// Mangled name computed from Ir: #test1(Lazy<kotlin.Int>;Lazy<kotlin.CharSequence>){}
// Mangled name computed from Descriptor: #test1!Lazy<kotlin.Int>!Lazy<kotlin.CharSequence>(){}
// Public signature: /test1|5140438532469983470[0]
fun test1($context_receiver_0: Lazy<Int>, $context_receiver_1: Lazy<CharSequence>): Unit
// CHECK:
// Mangled name computed from Ir: #test2@Lazy<kotlin.Int>(Lazy<0:0>){0§<kotlin.Any?>}
// Mangled name computed from Descriptor: #test2!Lazy<0:0>@Lazy<kotlin.Int>(){0§<kotlin.Any?>}
// Public signature: /test2|-2502875315769862011[0]
fun <T : Any?> Lazy<Int>.test2($context_receiver_0: Lazy<T>): Unit
// CHECK:
// Mangled name computed from Ir: #test3@Lazy<kotlin.Int>(Lazy<Lazy<0:0>>){0§<kotlin.Any?>}
// Mangled name computed from Descriptor: #test3!Lazy<Lazy<0:0>>@Lazy<kotlin.Int>(){0§<kotlin.Any?>}
// Public signature: /test3|-745136432920564509[0]
fun <T : Any?> Lazy<Int>.test3($context_receiver_0: Lazy<Lazy<T>>): Unit
@@ -1,8 +1,12 @@
// FIR_IDENTICAL
// !LANGUAGE: +ContextReceivers
// DUMP_LOCAL_DECLARATION_SIGNATURES
// IGNORE_BACKEND: JS_IR
// IGNORE_BACKEND: JS_IR_ES6
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57428, KT-57435
class Context
context(Context)
@@ -0,0 +1,30 @@
// CHECK:
// Mangled name: Context
// Public signature: /Context|null[0]
class Context {
// CHECK:
// Mangled name: Context#<init>(){}
// Public signature: /Context.<init>|-5645683436151566731[0]
constructor() /* primary */
}
// CHECK JVM_IR:
// Mangled name computed from Ir: #f(Context){}kotlin.String
// Mangled name computed from Descriptor: #f!Context(){}kotlin.String
// Public signature: /f|-5175802051654911360[0]
fun f($context_receiver_0: Context): String
// CHECK JVM_IR:
// Mangled name: #f(){}kotlin.Any
// Public signature: /f|-2324325393552926316[0]
fun f(): Any
// CHECK:
// Mangled name: #test(){}
// Public signature: /test|6620506149988718649[0]
fun test(): Unit
// CHECK JVM_IR:
// Mangled name: #test(){}#<anonymous>#static@Context(){}kotlin.Int
local fun Context.<anonymous>(): Int
@@ -1,8 +1,12 @@
// FIR_IDENTICAL
// !LANGUAGE: +ContextReceivers
// DUMP_LOCAL_DECLARATION_SIGNATURES
// IGNORE_BACKEND: JS_IR
// IGNORE_BACKEND: JS_IR_ES6
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57428, KT-57435
context(Int, String)
fun foo(): Int {
return this@Int + 42
@@ -0,0 +1,20 @@
// CHECK JVM_IR:
// Mangled name computed from Ir: #foo(kotlin.Int){}kotlin.Int
// Mangled name computed from Descriptor: #foo!kotlin.Int(){}kotlin.Int
// Public signature: /foo|-298514072419997277[0]
fun foo($context_receiver_0: Int): Int
// CHECK JVM_IR:
// Mangled name computed from Ir: #foo(kotlin.Int;kotlin.String){}kotlin.Int
// Mangled name computed from Descriptor: #foo!kotlin.Int!kotlin.String(){}kotlin.Int
// Public signature: /foo|7076979931255393427[0]
fun foo($context_receiver_0: Int, $context_receiver_1: String): Int
// CHECK:
// Mangled name: #test(){}
// Public signature: /test|6620506149988718649[0]
fun test(): Unit
// CHECK JVM_IR:
// Mangled name: #test(){}#<anonymous>#static@kotlin.Int(){}kotlin.Int
local fun Int.<anonymous>(): Int
@@ -0,0 +1,30 @@
// CHECK:
// Mangled name: C
// Public signature: /C|null[0]
class C {
// CHECK:
// Mangled name: C{}result
// Public signature: /C.result|456251868630197251[0]
val result: String
// CHECK JVM_IR:
// Mangled name: C#<get-result>(){}kotlin.String
// Public signature: /C.result.<get-result>|8441547134620975366[0]
get
// CHECK:
// Mangled name: C#<init>(){}
// Public signature: /C.<init>|-5645683436151566731[0]
constructor() /* primary */
}
// CHECK JVM_IR:
// Mangled name: #box(){}kotlin.String
// Public signature: /box|-9347091776561469[0]
fun box(): String
// CHECK JVM_IR:
// Mangled name: #contextual(kotlin.Function1<C,kotlin.String>){}kotlin.String
// Public signature: /contextual|-248785556334643583[0]
fun contextual(f: Function1<C, String>): String
@@ -4,6 +4,9 @@
// IGNORE_BACKEND: JS_IR
// IGNORE_BACKEND: JS_IR_ES6
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57435
interface NumberOperations {
fun Number.plus(other: Number): Number
}
@@ -0,0 +1,34 @@
// CHECK:
// Mangled name: Matrix
// Public signature: /Matrix|null[0]
class Matrix {
// CHECK:
// Mangled name: Matrix#<init>(){}
// Public signature: /Matrix.<init>|-5645683436151566731[0]
constructor() /* primary */
}
// CHECK:
// Mangled name: NumberOperations
// Public signature: /NumberOperations|null[0]
interface NumberOperations {
// CHECK JVM_IR:
// Mangled name: NumberOperations#plus@kotlin.Number(kotlin.Number){}kotlin.Number
// Public signature: /NumberOperations.plus|-6518987633126930952[0]
abstract fun Number.plus(other: Number): Number
}
// CHECK JVM_IR:
// Mangled name computed from Ir: #plus@Matrix(NumberOperations;Matrix){}Matrix
// Mangled name computed from Descriptor: #plus!NumberOperations@Matrix(Matrix){}Matrix
// Public signature: /plus|1303343764214809933[0]
fun Matrix.plus($context_receiver_0: NumberOperations, other: Matrix): Matrix
// CHECK:
// Mangled name: #plusMatrix@NumberOperations(Matrix;Matrix){}
// Public signature: /plusMatrix|-8194087590203252948[0]
fun NumberOperations.plusMatrix(m1: Matrix, m2: Matrix): Unit
@@ -1,6 +1,9 @@
// FIR_IDENTICAL
// !LANGUAGE: +ContextReceivers
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57435
interface A {
fun a(): Int
}
@@ -0,0 +1,44 @@
// CHECK:
// Mangled name: A
// Public signature: /A|null[0]
interface A {
// CHECK JVM_IR:
// Mangled name: A#a(){}kotlin.Int
// Public signature: /A.a|5993980063692763883[0]
// CHECK JS_IR NATIVE:
// Mangled name: A#a(){}
// Public signature: /A.a|-4432112437378250461[0]
abstract fun a(): Int
}
// CHECK:
// Mangled name: B
// Public signature: /B|null[0]
interface B {
// CHECK JVM_IR:
// Mangled name: B#b(){}kotlin.Int
// Public signature: /B.b|-6472101675379091489[0]
// CHECK JS_IR NATIVE:
// Mangled name: B#b(){}
// Public signature: /B.b|4789657038926421504[0]
abstract fun b(): Int
}
// CHECK:
// Mangled name: {}c
// Public signature: /c|-4416962153448040627[0]
val c: Int
// CHECK JVM_IR:
// Mangled name computed from Ir: #<get-c>(A;B){}kotlin.Int
// Mangled name computed from Descriptor: #<get-c>!A!B(){}kotlin.Int
// Public signature: /c.<get-c>|-2082007887378586898[0]
// CHECK JS_IR NATIVE:
// Mangled name computed from Ir: #<get-c>(A;B){}
// Mangled name computed from Descriptor: #<get-c>!A!B(){}
// Public signature: /c.<get-c>|2760865531401172403[0]
get($context_receiver_0: A, $context_receiver_1: B): Int
@@ -3,6 +3,9 @@
// IGNORE_BACKEND_K1: JS_IR
// IGNORE_BACKEND_K1: JS_IR_ES6
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57429, KT-57435
class A<T>(val a: T)
class B(val b: Any)
class C(val c: Any)
@@ -0,0 +1,76 @@
// CHECK:
// Mangled name: A
// Public signature: /A|null[0]
class A<T : Any?> {
// CHECK:
// Mangled name: A{}a
// Public signature: /A.a|-1200697420457237799[0]
val a: T
// CHECK JVM_IR:
// Mangled name: A#<get-a>(){}1:0
// Public signature: /A.a.<get-a>|5765441560292063424[0]
get
// CHECK:
// Mangled name: A#<init>(1:0){}
// Public signature: /A.<init>|-8731461708390519279[0]
constructor(a: T) /* primary */
}
// CHECK:
// Mangled name: B
// Public signature: /B|null[0]
class B {
// CHECK:
// Mangled name: B{}b
// Public signature: /B.b|772347207915745207[0]
val b: Any
// CHECK JVM_IR:
// Mangled name: B#<get-b>(){}kotlin.Any
// Public signature: /B.b.<get-b>|4768115582956424363[0]
get
// CHECK:
// Mangled name: B#<init>(kotlin.Any){}
// Public signature: /B.<init>|4518179880532599055[0]
constructor(b: Any) /* primary */
}
// CHECK:
// Mangled name: C
// Public signature: /C|null[0]
class C {
// CHECK:
// Mangled name: C{}c
// Public signature: /C.c|-4416962153448040627[0]
val c: Any
// CHECK JVM_IR:
// Mangled name: C#<get-c>(){}kotlin.Any
// Public signature: /C.c.<get-c>|-7073232512849879703[0]
get
// CHECK:
// Mangled name: C#<init>(kotlin.Any){}
// Public signature: /C.<init>|4518179880532599055[0]
constructor(c: Any) /* primary */
}
// CHECK:
// Mangled name computed from Ir: #f(A<kotlin.Int>;A<kotlin.String>;B){}
// Mangled name computed from Descriptor: #f!A<kotlin.Int>!A<kotlin.String>!B(){}
// Public signature: /f|-2471136927765483161[0]
fun f($context_receiver_0: A<Int>, $context_receiver_1: A<String>, $context_receiver_2: B): Unit
// CHECK:
// Mangled name: @C{}p
// Public signature: /p|-5429013048289439414[0]
val C.p: Int
// CHECK JVM_IR:
// Mangled name computed from Ir: #<get-p>@C(A<kotlin.Int>;A<kotlin.String>;B){}kotlin.Int
// Mangled name computed from Descriptor: #<get-p>!A<kotlin.Int>!A<kotlin.String>!B@C(){}kotlin.Int
// Public signature: /p.<get-p>|-7725362510645392909[0]
get($context_receiver_0: A<Int>, $context_receiver_1: A<String>, $context_receiver_2: B): Int
@@ -1,8 +1,12 @@
// FIR_IDENTICAL
// !LANGUAGE: +ContextReceivers
// DUMP_LOCAL_DECLARATION_SIGNATURES
// IGNORE_BACKEND: JS_IR
// IGNORE_BACKEND: JS_IR_ES6
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57428, KT-57435
context(T)
fun <T> useContext(block: (T) -> Unit) { }
@@ -0,0 +1,17 @@
// CHECK:
// Mangled name: #test(){}
// Public signature: /test|6620506149988718649[0]
fun test(): Unit
// CHECK:
// Mangled name: #test(){}#<anonymous>#static@kotlin.Int(){}
local fun Int.<anonymous>(): Unit
// CHECK:
// Mangled name: #test(){}#<anonymous>#static@kotlin.Int(){}#<anonymous>#static(kotlin.Int){}
local fun <anonymous>(i: Int): Unit
// CHECK:
// Mangled name computed from Ir: #useContext(0:0;kotlin.Function1<0:0,kotlin.Unit>){0§<kotlin.Any?>}
// Mangled name computed from Descriptor: #useContext!0:0(kotlin.Function1<0:0,kotlin.Unit>){0§<kotlin.Any?>}
// Public signature: /useContext|4354708628570086942[0]
fun <T : Any?> useContext($context_receiver_0: T, block: Function1<T, Unit>): Unit
@@ -1,6 +1,9 @@
// !LANGUAGE: +ContextReceivers
// TARGET_BACKEND: JVM_IR
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57435
data class Result(val i: Int)
var operationScore = 0
@@ -0,0 +1,86 @@
// CHECK:
// Mangled name: {}operationScore
// Public signature: /operationScore|-9073278321118823634[0]
var operationScore: Int
// CHECK JVM_IR:
// Mangled name: #<get-operationScore>(){}kotlin.Int
// Public signature: /operationScore.<get-operationScore>|7107010356269447258[0]
get
// CHECK:
// Mangled name: #<set-operationScore>(kotlin.Int){}
// Public signature: /operationScore.<set-operationScore>|1936076120216071025[0]
set
// CHECK:
// Mangled name: Result
// Public signature: /Result|null[0]
data class Result {
// CHECK:
// Mangled name: Result{}i
// Public signature: /Result.i|5014384761142332495[0]
val i: Int
// CHECK JVM_IR:
// Mangled name: Result#<get-i>(){}kotlin.Int
// Public signature: /Result.i.<get-i>|-8784396159001927527[0]
get
// CHECK:
// Mangled name: Result#<init>(kotlin.Int){}
// Public signature: /Result.<init>|-5182794243525578284[0]
constructor(i: Int) /* primary */
// CHECK JVM_IR:
// Mangled name: Result#component1(){}kotlin.Int
// Public signature: /Result.component1|-8217597213800111288[0]
operator fun component1(): Int
// CHECK JVM_IR:
// Mangled name: Result#copy(kotlin.Int){}Result
// Public signature: /Result.copy|5439238034196076859[0]
fun copy(i: Int): Result
// CHECK JVM_IR:
// Mangled name: Result#equals(kotlin.Any?){}kotlin.Boolean
// Public signature: /Result.equals|722809408929142791[0]
override operator fun equals(other: Any?): Boolean
// CHECK JVM_IR:
// Mangled name: Result#hashCode(){}kotlin.Int
// Public signature: /Result.hashCode|-8048879360829830756[0]
override fun hashCode(): Int
// CHECK JVM_IR:
// Mangled name: Result#toString(){}kotlin.String
// Public signature: /Result.toString|6958853723545266802[0]
override fun toString(): String
}
// CHECK JVM_IR:
// Mangled name: #box(){}kotlin.String
// Public signature: /box|-9347091776561469[0]
fun box(): String
// CHECK JVM_IR:
// Mangled name computed from Ir: #dec@Result(kotlin.Int){}Result
// Mangled name computed from Descriptor: #dec!kotlin.Int@Result(){}Result
// Public signature: /dec|6054584114651390969[0]
operator fun Result.dec($context_receiver_0: Int): Result
// CHECK JVM_IR:
// Mangled name computed from Ir: #inc@Result(kotlin.Int){}Result
// Mangled name computed from Descriptor: #inc!kotlin.Int@Result(){}Result
// Public signature: /inc|-6349683016158919485[0]
operator fun Result.inc($context_receiver_0: Int): Result
// CHECK JVM_IR:
// Mangled name computed from Ir: #unaryMinus@Result(kotlin.Int){}Result
// Mangled name computed from Descriptor: #unaryMinus!kotlin.Int@Result(){}Result
// Public signature: /unaryMinus|-8891797954767898088[0]
operator fun Result.unaryMinus($context_receiver_0: Int): Result
// CHECK JVM_IR:
// Mangled name computed from Ir: #unaryPlus@Result(kotlin.Int){}Result
// Mangled name computed from Descriptor: #unaryPlus!kotlin.Int@Result(){}Result
// Public signature: /unaryPlus|6329022242309077522[0]
operator fun Result.unaryPlus($context_receiver_0: Int): Result