IR text tests: Don't dump signatures for local declarations

1. Local declarations don't participate in IR-linkage, because they
can be referenced only inside the same body -> can be dropped
from IR text tests.

2. Mangled names for private declarations computed by descriptors/fir
are actually not used anywhere (they are recomputed by IR
immediately before serialization of IR). But sometimes such
mangled names diverge between K1 and K2 -> don't check them, but
always check mangled names computed by IR even for private
declarations.

3. Also: Drop DUMP_LOCAL_DECLARATION_SIGNATURES test directive.

^KT-57428 Obsolete
^KT-57430 Obsolete
^KT-57434 Obsolete
^KT-57778 Obsolete
^KT-57775 Obsolete
This commit is contained in:
Dmitriy Dolovov
2023-11-20 19:10:54 +01:00
committed by Space Team
parent 514ae0c813
commit 02604060ae
125 changed files with 259 additions and 1376 deletions
@@ -2,9 +2,6 @@
// WITH_STDLIB
// FULL_JDK
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57778
// FILE: OverloadResolutionResultsImpl.java
import java.util.*;
@@ -35,7 +35,6 @@ class ResolvedCall<C : Any?> {
// CHECK JVM_IR:
// Mangled name: #allCandidatesResult(kotlin.collections.Collection<MyCandidate>){0§<kotlin.Any?>}OverloadResolutionResultsImpl<0:0?>?
// Mangled name for the signature: allCandidatesResult(kotlin.collections.Collection<MyCandidate>){0§<kotlin.Any?>}OverloadResolutionResultsImpl<0:0?>?
// Public signature: [ File 'AllCandidates.kt' <- /allCandidatesResult|-4417746287859138452[0] ]
// Public signature: [ File '/AllCandidates.kt' <- /allCandidatesResult|-4417746287859138452[0] ]
private fun <A : Any?> allCandidatesResult(allCandidates: Collection<MyCandidate>): OverloadResolutionResultsImpl<A?>?
@@ -1,8 +1,4 @@
// FIR_IDENTICAL
// DUMP_LOCAL_DECLARATION_SIGNATURES
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57430, KT-57778
interface NestedGroupFragment
@@ -7,35 +7,17 @@ interface NestedGroupFragment {
// CHECK JVM_IR:
// Mangled name: #addMavenOptionsGroupFragment(){}#addOptionsGroup.<no name provided><kotlin.Int>
// Mangled name for the signature: addMavenOptionsGroupFragment(){}#addOptionsGroup.<no name provided><kotlin.Int>
// Public signature: [ File 'AnonymousAsReturnOfGenericFunction.kt' <- /addMavenOptionsGroupFragment|1068646653174639665[0] ]
// Public signature: [ File '/AnonymousAsReturnOfGenericFunction.kt' <- /addMavenOptionsGroupFragment|1068646653174639665[0] ]
// CHECK JS_IR NATIVE:
// Mangled name: #addMavenOptionsGroupFragment(){}
// Mangled name for the signature: addMavenOptionsGroupFragment(){}
// Public signature: [ File '/AnonymousAsReturnOfGenericFunction.kt' <- /addMavenOptionsGroupFragment|-4517906277787800298[0] ]
private fun addMavenOptionsGroupFragment(): <no name provided><Int>
// CHECK JVM_IR:
// Mangled name: #addOptionsGroup(){0§<kotlin.Any?>}#addOptionsGroup.<no name provided><0:0>
// Mangled name for the signature: addOptionsGroup(){0§<kotlin.Any?>}#addOptionsGroup.<no name provided><0:0>
// Public signature: [ File 'AnonymousAsReturnOfGenericFunction.kt' <- /addOptionsGroup|1295014906395670038[0] ]
// Public signature: [ File '/AnonymousAsReturnOfGenericFunction.kt' <- /addOptionsGroup|1295014906395670038[0] ]
// CHECK JS_IR NATIVE:
// Mangled name: #addOptionsGroup(){0§<kotlin.Any?>}
// Mangled name for the signature: addOptionsGroup(){0§<kotlin.Any?>}
// Public signature: [ File '/AnonymousAsReturnOfGenericFunction.kt' <- /addOptionsGroup|-317275232107674074[0] ]
private fun <S : Any?> addOptionsGroup(): <no name provided><S>
// CHECK JVM_IR:
// Mangled name: #addOptionsGroup(){0§<kotlin.Any?>}#addOptionsGroup.<no name provided><1:0>.<no name provided>
// Mangled name for the signature: addOptionsGroup(){0§<kotlin.Any?>}#addOptionsGroup.<no name provided><1:0>
// CHECK JS_IR NATIVE:
// Mangled name: #addOptionsGroup(){0§<kotlin.Any?>}.<no name provided>
// Mangled name for the signature: addOptionsGroup(){0§<kotlin.Any?>}
local class <no name provided> : NestedGroupFragment {
// CHECK JVM_IR:
// Mangled name: #addOptionsGroup(){0§<kotlin.Any?>}#addOptionsGroup.<no name provided><2:0>.<no name provided>#<init>(){}
// Mangled name for the signature: addOptionsGroup(){0§<kotlin.Any?>}#addOptionsGroup.<no name provided><2:0><init>(){}
// CHECK JS_IR NATIVE:
// Mangled name: #addOptionsGroup(){0§<kotlin.Any?>}.<no name provided>#<init>(){}
// Mangled name for the signature: addOptionsGroup(){0§<kotlin.Any?>}<init>(){}
constructor() /* primary */
}
@@ -1,4 +1,5 @@
// MUTE_SIGNATURE_COMPARISON_K2: JVM_IR
// ^ KT-57755: Fix computing a mangled name for the `main` function
package foo
class A {
@@ -93,8 +93,10 @@ fun <T : Any?> id(t: T): T
// Mangled name: foo#main(){}
// Mangled name for the signature computed from Ir: main(){}
// Mangled name for the signature computed from Descriptor: main(){}%AssignmentOperator.kt
// Public signature: foo/main|7392120756922895329[0]
// Public signature debug description: main(){}%AssignmentOperator.kt
// Public signature by IR: foo/main|-4284757841571462650[0]
// Public signature by IR debug description: main(){}
// Public signature by Frontend: foo/main|7392120756922895329[0]
// Public signature by Frontend debug description: main(){}%AssignmentOperator.kt
// CHECK JS_IR NATIVE:
// Mangled name: foo#main(){}
// Public signature: foo/main|-4284757841571462650[0]
@@ -2,9 +2,6 @@
// FULL_JDK
// WITH_STDLIB
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57778
import java.lang.reflect.Type
interface ComponentContainer
@@ -1,12 +1,10 @@
// CHECK:
// Mangled name: {}registrationMap
// Mangled name for the signature: {}registrationMap
// Public signature: [ File 'ClashResolutionDescriptor.kt' <- /registrationMap|8184441143918876435[0] ]
// Public signature: [ File '/ClashResolutionDescriptor.kt' <- /registrationMap|8184441143918876435[0] ]
private val registrationMap: HashMap<Type, Any>
// CHECK JVM_IR:
// Mangled name: #<get-registrationMap>(){}java.util.HashMap<java.lang.reflect.Type,kotlin.Any>
// Mangled name for the signature: <get-registrationMap>(){}java.util.HashMap<java.lang.reflect.Type,kotlin.Any>
// Public signature: [ File 'ClashResolutionDescriptor.kt' <- /registrationMap.<get-registrationMap>|3119298927482099509[0] ]
// Public signature: [ File '/ClashResolutionDescriptor.kt' <- /registrationMap.<get-registrationMap>|3119298927482099509[0] ]
private get
// CHECK:
@@ -7,11 +7,6 @@ class Impl : A, B {
// Public signature: /Impl.<init>|1084968671839233134[0]
// Public signature debug description: <init>(Foo.B){}
constructor(b: B) /* primary */
// CHECK:
// Mangled name: Impl.$$delegate_0
// Public signature: /Impl.$$delegate_0|-7286425919675154353[0]
// Public signature debug description:
private /* final field */ val $$delegate_0: B
// CHECK JVM_IR:
// Mangled name: Impl#add(kotlin.String?){}kotlin.Boolean
// Public signature: /Impl.add|-2525808668243873976[0]
@@ -1,8 +1,3 @@
// DUMP_LOCAL_DECLARATION_SIGNATURES
// MUTE_SIGNATURE_COMPARISON_K2: JVM_IR
// ^ KT-57430
class Wrapper {
private val dummy = object : Bar {}
private val bar = object : Bar by dummy {}
@@ -7,50 +7,9 @@ class Wrapper {
// Public signature: /Wrapper.dummy|-4015397354973262001[0]
// Public signature debug description: {}dummy
private val dummy: <no name provided>
field
// CHECK JVM_IR:
// Mangled name (compatible mode: false): Wrapper{}dummy.<no name provided>
// Mangled name (compatible mode: true): Wrapper.dummy.<no name provided>
// Mangled name for the signature (compatible mode: false): {}dummy
// Mangled name for the signature (compatible mode: true):
// CHECK JS_IR NATIVE:
// Mangled name (compatible mode: false): Wrapper{}dummy.<no name provided>
// Mangled name (compatible mode: true): Wrapper.dummy.<no name provided>
// Mangled name for the signature (compatible mode: false): {}dummy
// Mangled name for the signature (compatible mode: true):
local class <no name provided> : Bar {
// CHECK:
// Mangled name (compatible mode: false): Wrapper{}dummy.<no name provided>#<init>(){}
// Mangled name (compatible mode: true): Wrapper.dummy.<no name provided>#<init>(){}
// Mangled name for the signature (compatible mode: false): {}dummy<init>(){}
// Mangled name for the signature (compatible mode: true): <init>(){}
constructor() /* primary */
// CHECK:
// Mangled name (compatible mode: false): Wrapper{}dummy.<no name provided>{}foo
// Mangled name (compatible mode: true): Wrapper.dummy.<no name provided>{}foo
// Mangled name for the signature (compatible mode: false): {}dummy{}foo
// Mangled name for the signature (compatible mode: true): {}foo
/* fake */ override val foo: String
// CHECK JVM_IR:
// Mangled name (compatible mode: false): Wrapper{}dummy.<no name provided>#<get-foo>(){}kotlin.String
// Mangled name (compatible mode: true): Wrapper.dummy.<no name provided>#<get-foo>(){}kotlin.String
// Mangled name for the signature (compatible mode: false): {}dummy<get-foo>(){}kotlin.String
// Mangled name for the signature (compatible mode: true): <get-foo>(){}kotlin.String
// CHECK JS_IR NATIVE:
// Mangled name (compatible mode: false): Wrapper{}dummy.<no name provided>#<get-foo>(){}
// Mangled name (compatible mode: true): Wrapper.dummy.<no name provided>#<get-foo>(){}
// Mangled name for the signature (compatible mode: false): {}dummy<get-foo>(){}
// Mangled name for the signature (compatible mode: true): <get-foo>(){}
/* fake */ override get(): String
}
// CHECK JVM_IR:
// Mangled name (compatible mode: false): Wrapper#<get-dummy>(){}Wrapper{}dummy.<no name provided>
// Mangled name (compatible mode: true): Wrapper#<get-dummy>(){}Wrapper.dummy.<no name provided>
// Mangled name for the signature (compatible mode: false): <get-dummy>(){}Wrapper{}dummy.<no name provided>
// Mangled name for the signature (compatible mode: true): <get-dummy>(){}Wrapper.dummy.<no name provided>
// Public signature: /Wrapper.dummy.<get-dummy>|-1011589390871666922[0]
// Public signature debug description: <get-dummy>(){}Wrapper{}dummy.<no name provided>
// CHECK JS_IR NATIVE:
@@ -64,56 +23,9 @@ class Wrapper {
// Public signature: /Wrapper.bar|-7864284097863469857[0]
// Public signature debug description: {}bar
private val bar: <no name provided>
field
// CHECK JVM_IR:
// Mangled name (compatible mode: false): Wrapper{}bar.<no name provided>
// Mangled name (compatible mode: true): Wrapper.bar.<no name provided>
// Mangled name for the signature (compatible mode: false): {}bar
// Mangled name for the signature (compatible mode: true):
// CHECK JS_IR NATIVE:
// Mangled name (compatible mode: false): Wrapper{}bar.<no name provided>
// Mangled name (compatible mode: true): Wrapper.bar.<no name provided>
// Mangled name for the signature (compatible mode: false): {}bar
// Mangled name for the signature (compatible mode: true):
local class <no name provided> : Bar {
// CHECK:
// Mangled name (compatible mode: false): Wrapper{}bar.<no name provided>#<init>(){}
// Mangled name (compatible mode: true): Wrapper.bar.<no name provided>#<init>(){}
// Mangled name for the signature (compatible mode: false): {}bar<init>(){}
// Mangled name for the signature (compatible mode: true): <init>(){}
constructor() /* primary */
// CHECK:
// Mangled name (compatible mode: false): Wrapper{}bar.<no name provided>.$$delegate_0
// Mangled name (compatible mode: true): Wrapper.bar.<no name provided>.$$delegate_0
// Mangled name for the signature (compatible mode: false): {}bar
// Mangled name for the signature (compatible mode: true):
private /* final field */ val $$delegate_0: <no name provided>
// CHECK:
// Mangled name (compatible mode: false): Wrapper{}bar.<no name provided>{}foo
// Mangled name (compatible mode: true): Wrapper.bar.<no name provided>{}foo
// Mangled name for the signature (compatible mode: false): {}bar{}foo
// Mangled name for the signature (compatible mode: true): {}foo
override val foo: String
// CHECK JVM_IR:
// Mangled name (compatible mode: false): Wrapper{}bar.<no name provided>#<get-foo>(){}kotlin.String
// Mangled name (compatible mode: true): Wrapper.bar.<no name provided>#<get-foo>(){}kotlin.String
// Mangled name for the signature (compatible mode: false): {}bar<get-foo>(){}kotlin.String
// Mangled name for the signature (compatible mode: true): <get-foo>(){}kotlin.String
// CHECK JS_IR NATIVE:
// Mangled name (compatible mode: false): Wrapper{}bar.<no name provided>#<get-foo>(){}
// Mangled name (compatible mode: true): Wrapper.bar.<no name provided>#<get-foo>(){}
// Mangled name for the signature (compatible mode: false): {}bar<get-foo>(){}
// Mangled name for the signature (compatible mode: true): <get-foo>(){}
override get(): String
}
// CHECK JVM_IR:
// Mangled name (compatible mode: false): Wrapper#<get-bar>(){}Wrapper{}bar.<no name provided>
// Mangled name (compatible mode: true): Wrapper#<get-bar>(){}Wrapper.bar.<no name provided>
// Mangled name for the signature (compatible mode: false): <get-bar>(){}Wrapper{}bar.<no name provided>
// Mangled name for the signature (compatible mode: true): <get-bar>(){}Wrapper.bar.<no name provided>
// Public signature: /Wrapper.bar.<get-bar>|-6775654681164748186[0]
// Public signature debug description: <get-bar>(){}Wrapper{}bar.<no name provided>
// CHECK JS_IR NATIVE:
@@ -1,10 +1,6 @@
// TARGET_BACKEND: JVM_IR
// DUMP_LOCAL_DECLARATION_SIGNATURES
// SKIP_KLIB_TEST
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57430
// FILE: Collector.java
public class Collector {
@@ -8,26 +8,11 @@ class Serializer {
// Public signature debug description: <init>(){}
constructor() /* primary */
// CHECK JVM_IR:
// CHECK:
// Mangled name: Serializer#createMessageCollector(){}Serializer#createMessageCollector.<no name provided>
// Public signature: /Serializer.createMessageCollector|2610567021773551177[0]
// Public signature debug description: createMessageCollector(){}Serializer#createMessageCollector.<no name provided>
private fun createMessageCollector(): <no name provided>
// CHECK:
// Mangled name: Serializer#createMessageCollector(){}Serializer#createMessageCollector.<no name provided>.<no name provided>
// Mangled name for the signature: createMessageCollector(){}Serializer#createMessageCollector.<no name provided>
local class <no name provided> : Collector {
// CHECK:
// Mangled name: Serializer#createMessageCollector(){}Serializer#createMessageCollector.<no name provided>.<no name provided>#<init>(){}
// Mangled name for the signature: createMessageCollector(){}Serializer#createMessageCollector.<no name provided><init>(){}
constructor() /* primary */
// CHECK:
// Mangled name: Serializer#createMessageCollector(){}Serializer#createMessageCollector.<no name provided>.<no name provided>#flush(){}
// Mangled name for the signature: createMessageCollector(){}Serializer#createMessageCollector.<no name provided>flush(){}
/* fake */ override fun flush(): Unit
}
// CHECK:
// Mangled name: Serializer#serialize(){}
@@ -4,8 +4,8 @@
// IGNORE_BACKEND: JS_IR
// IGNORE_BACKEND: JS_IR_ES6
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57788
// MUTE_SIGNATURE_COMPARISON_K2: JVM_IR JS_IR NATIVE
// ^ KT-57788: Fix computing mangled names of types with @EnhancedNullability from IR-based declaration descriptors
// KT-61141: ImplicitReceiverStack & PersistentImplicitReceiverStack miss fake overrides `forEach` & `spliterator`
// IGNORE_BACKEND: NATIVE
@@ -41,18 +41,16 @@ open class B {
// CHECK:
// Mangled name: D
// Public signature: [ File '<unknown>' <- /D|null[0] ]
// Public signature: [ File '/test.kt' <- /D|null[0] ]
private class D : C {
// CHECK:
// Mangled name: D#<init>(A){}
// Public signature: /D.<init>|-3166999336802030902[0]
// Public signature debug description: <init>(A){}
// Public signature: [ File '/test.kt' <- /D.<init>|-3166999336802030902[0] ]
constructor(a: A) /* primary */
// CHECK:
// Mangled name: D#getA(){0§<A>}0:0
// Public signature: /D.getA|6265629995120627543[0]
// Public signature debug description: getA(){0§<A>}0:0
// Public signature: [ File '/test.kt' <- /D.getA|6265629995120627543[0] ]
/* fake */ override fun <T : A> getA(): T
}
@@ -2,9 +2,6 @@
// WITH_STDLIB
// FULL_JDK
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57778
import java.io.Reader
import java.io.StringReader
@@ -6,18 +6,15 @@ fun Reader.consumeRestOfQuotedSequence(sb: StringBuilder, quote: Char): Unit
// CHECK JVM_IR:
// Mangled name: #nextChar@java.io.Reader(){}kotlin.Char?
// Mangled name for the signature: nextChar@java.io.Reader(){}kotlin.Char?
// Public signature: [ File 'coercionToUnitForNestedWhen.kt' <- /nextChar|8697099457416866690[0] ]
// Public signature: [ File '/coercionToUnitForNestedWhen.kt' <- /nextChar|8697099457416866690[0] ]
private fun Reader.nextChar(): Char?
// CHECK:
// Mangled name: {}BACKSLASH
// Mangled name for the signature: {}BACKSLASH
// Public signature: [ File 'coercionToUnitForNestedWhen.kt' <- /BACKSLASH|9213821134505379379[0] ]
// Public signature: [ File '/coercionToUnitForNestedWhen.kt' <- /BACKSLASH|9213821134505379379[0] ]
private const val BACKSLASH: Char
// CHECK JVM_IR:
// Mangled name: #<get-BACKSLASH>(){}kotlin.Char
// Mangled name for the signature: <get-BACKSLASH>(){}kotlin.Char
// Public signature: [ File 'coercionToUnitForNestedWhen.kt' <- /BACKSLASH.<get-BACKSLASH>|7174062972088453102[0] ]
// Public signature: [ File '/coercionToUnitForNestedWhen.kt' <- /BACKSLASH.<get-BACKSLASH>|7174062972088453102[0] ]
private get
+1 -1
View File
@@ -2,7 +2,7 @@
// IGNORE_BACKEND_K1: JS_IR
// MUTE_SIGNATURE_COMPARISON_K2: JVM_IR
// ^ KT-57755
// ^ KT-57755: Fix computing a mangled name for the `main` function
// KT-61141: `println (message: kotlin.Any?)` instead of `println (message: kotlin.Int)`
// IGNORE_BACKEND_K1: NATIVE
+4 -2
View File
@@ -2,8 +2,10 @@
// Mangled name: #main(){}
// Mangled name for the signature computed from Ir: main(){}
// Mangled name for the signature computed from Descriptor: main(){}%kt55458.kt
// Public signature: /main|-1793468409000137506[0]
// Public signature debug description: main(){}%kt55458.kt
// Public signature by IR: /main|-4284757841571462650[0]
// Public signature by IR debug description: main(){}
// Public signature by Frontend: /main|-1793468409000137506[0]
// Public signature by Frontend debug description: main(){}%kt55458.kt
// CHECK JS_IR NATIVE:
// Mangled name: #main(){}
// Public signature: /main|-4284757841571462650[0]
@@ -1,14 +1,6 @@
// WITH_STDLIB
// DUMP_LOCAL_DECLARATION_SIGNATURES
// IGNORE_BACKEND: JS_IR
// IGNORE_BACKEND: JS_IR_ES6
// KT-50774
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57427
// KT-61141: absent enum fake_overrides: finalize, getDeclaringClass, clone
// IGNORE_BACKEND: NATIVE
// IGNORE_BACKEND: JS_IR JS_IR_ES6 NATIVE
// ^ KT-61141: absent enum fake_overrides: finalize, getDeclaringClass, clone
class Wrapper(var baseUrl: String)
@@ -7,7 +7,6 @@ class Wrapper {
// Public signature: /Wrapper.baseUrl|8725729733335673706[0]
// Public signature debug description: {}baseUrl
var baseUrl: String
field
// CHECK JVM_IR:
// Mangled name: Wrapper#<get-baseUrl>(){}kotlin.String
// Public signature: /Wrapper.baseUrl.<get-baseUrl>|-3814925406424189958[0]
@@ -44,11 +43,6 @@ enum class ConfigurationParameter : Enum<ConfigurationParameter> {
// Mangled name: ConfigurationParameter.BASE_URL
// Public signature: /ConfigurationParameter.BASE_URL|null[0]
BASE_URL
// CHECK:
// Mangled name: ConfigurationParameter#<anonymous>#static(kotlin.String;Wrapper){}
// Mangled name for the signature computed from Ir: <anonymous>#static(kotlin.String;Wrapper){}
// Mangled name for the signature computed from Descriptor: <init>(){}<anonymous>#static(kotlin.String;Wrapper){}
local fun <anonymous>(value: String, nc: Wrapper): Unit
// CHECK JVM_IR:
// Mangled name: ConfigurationParameter#valueOf#static(kotlin.String){}ConfigurationParameter
@@ -1,8 +1,4 @@
// FIR_IDENTICAL
// DUMP_LOCAL_DECLARATION_SIGNATURES
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57430
fun box(): String {
return object {
@@ -7,69 +7,4 @@
// Public signature: /box|2173511048851971368[0]
// Public signature debug description: box(){}
fun box(): String
// CHECK JVM_IR:
// Mangled name: #box(){}kotlin.String.<no name provided>
// Mangled name for the signature: box(){}kotlin.String
// CHECK JS_IR NATIVE:
// Mangled name: #box(){}.<no name provided>
// Mangled name for the signature: box(){}
local class <no name provided> {
// CHECK JVM_IR:
// Mangled name: #box(){}kotlin.String.<no name provided>{}a
// Mangled name for the signature: box(){}kotlin.String{}a
// CHECK JS_IR NATIVE:
// Mangled name: #box(){}.<no name provided>{}a
// Mangled name for the signature: box(){}{}a
val a: A
field
// CHECK JVM_IR:
// Mangled name: #box(){}kotlin.String.<no name provided>#<get-a>(){}#box.<no name provided>.A
// Mangled name for the signature: box(){}kotlin.String<get-a>(){}#box.<no name provided>.A
// CHECK JS_IR NATIVE:
// Mangled name: #box(){}.<no name provided>#<get-a>(){}
// Mangled name for the signature: box(){}<get-a>(){}
get
// CHECK JVM_IR:
// Mangled name: #box(){}kotlin.String.<no name provided>.A
// Mangled name for the signature: box(){}kotlin.String
// CHECK JS_IR NATIVE:
// Mangled name: #box(){}.<no name provided>.A
// Mangled name for the signature: box(){}
local inner class A {
// CHECK JVM_IR:
// Mangled name: #box(){}kotlin.String.<no name provided>.A{}ok
// Mangled name for the signature: box(){}kotlin.String{}ok
// CHECK JS_IR NATIVE:
// Mangled name: #box(){}.<no name provided>.A{}ok
// Mangled name for the signature: box(){}{}ok
val ok: String
field
// CHECK JVM_IR:
// Mangled name: #box(){}kotlin.String.<no name provided>.A#<get-ok>(){}kotlin.String
// Mangled name for the signature: box(){}kotlin.String<get-ok>(){}kotlin.String
// CHECK JS_IR NATIVE:
// Mangled name: #box(){}.<no name provided>.A#<get-ok>(){}
// Mangled name for the signature: box(){}<get-ok>(){}
get
// CHECK JVM_IR:
// Mangled name: #box(){}kotlin.String.<no name provided>.A#<init>(kotlin.String){}
// Mangled name for the signature: box(){}kotlin.String<init>(kotlin.String){}
// CHECK JS_IR NATIVE:
// Mangled name: #box(){}.<no name provided>.A#<init>(kotlin.String){}
// Mangled name for the signature: box(){}<init>(kotlin.String){}
constructor(ok: String) /* primary */
}
// CHECK JVM_IR:
// Mangled name: #box(){}kotlin.String.<no name provided>#<init>(){}
// Mangled name for the signature: box(){}kotlin.String<init>(){}
// CHECK JS_IR NATIVE:
// Mangled name: #box(){}.<no name provided>#<init>(){}
// Mangled name for the signature: box(){}<init>(){}
constructor() /* primary */
}
+2 -3
View File
@@ -1,8 +1,7 @@
// FIR_IDENTICAL
// DUMP_LOCAL_DECLARATION_SIGNATURES
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57755, KT-57430
// MUTE_SIGNATURE_COMPARISON_K2: JVM_IR
// ^ KT-57755: Fix computing a mangled name for the `main` function
fun main() {
class Foo {
@@ -2,57 +2,13 @@
// Mangled name: #main(){}
// Mangled name for the signature computed from Ir: main(){}
// Mangled name for the signature computed from Descriptor: main(){}%localCompanion.kt
// Public signature: /main|1798078925369608927[0]
// Public signature debug description: main(){}%localCompanion.kt
// Public signature by IR: /main|-4284757841571462650[0]
// Public signature by IR debug description: main(){}
// Public signature by Frontend: /main|1798078925369608927[0]
// Public signature by Frontend debug description: main(){}%localCompanion.kt
// CHECK JS_IR NATIVE:
// Mangled name: #main(){}
// Public signature: /main|-4284757841571462650[0]
// Public signature debug description: main(){}
fun main(): Unit
// CHECK JVM_IR:
// Mangled name: #main(){}.Foo
// Mangled name for the signature computed from Ir: main(){}
// Mangled name for the signature computed from Descriptor: main(){}%localCompanion.kt
// CHECK JS_IR NATIVE:
// Mangled name: #main(){}.Foo
// Mangled name for the signature: main(){}
local class Foo {
// CHECK JVM_IR:
// Mangled name: #main(){}.Foo.Companion
// Mangled name for the signature computed from Ir: main(){}
// Mangled name for the signature computed from Descriptor: main(){}%localCompanion.kt
// CHECK JS_IR NATIVE:
// Mangled name: #main(){}.Foo.Companion
// Mangled name for the signature: main(){}
local companion object Companion {
// CHECK JVM_IR:
// Mangled name: #main(){}.Foo.Companion#<init>(){}
// Mangled name for the signature computed from Ir: main(){}<init>(){}
// Mangled name for the signature computed from Descriptor: main(){}%localCompanion.kt<init>(){}
// CHECK JS_IR NATIVE:
// Mangled name: #main(){}.Foo.Companion#<init>(){}
// Mangled name for the signature: main(){}<init>(){}
private constructor() /* primary */
// CHECK JVM_IR:
// Mangled name: #main(){}.Foo.Companion#bar(){}
// Mangled name for the signature computed from Ir: main(){}bar(){}
// Mangled name for the signature computed from Descriptor: main(){}%localCompanion.ktbar(){}
// CHECK JS_IR NATIVE:
// Mangled name: #main(){}.Foo.Companion#bar(){}
// Mangled name for the signature: main(){}bar(){}
fun bar(): Unit
}
// CHECK JVM_IR:
// Mangled name: #main(){}.Foo#<init>(){}
// Mangled name for the signature computed from Ir: main(){}<init>(){}
// Mangled name for the signature computed from Descriptor: main(){}%localCompanion.kt<init>(){}
// CHECK JS_IR NATIVE:
// Mangled name: #main(){}.Foo#<init>(){}
// Mangled name for the signature: main(){}<init>(){}
constructor() /* primary */
}
@@ -1,10 +1,6 @@
// FIR_IDENTICAL
// WITH_STDLIB
// WITH_REFLECT
// DUMP_LOCAL_DECLARATION_SIGNATURES
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57430
import kotlin.properties.ReadWriteProperty
import kotlin.reflect.KClass
@@ -7,7 +7,6 @@ class IdeWizard {
// Public signature: /IdeWizard.projectTemplate|1011078309052725595[0]
// Public signature debug description: {}projectTemplate
var projectTemplate: Int? /* by */
field
// CHECK JVM_IR:
// Mangled name: IdeWizard#<get-projectTemplate>(){}kotlin.Int?
// Public signature: /IdeWizard.projectTemplate.<get-projectTemplate>|-8817473698570649998[0]
@@ -38,38 +37,6 @@ class IdeWizard {
// Public signature: /IdeWizard.setting|2630265268614068431[0]
// Public signature debug description: setting(SettingReference<0:0,0:1>){0§<kotlin.Any>;1§<SettingType<0:0>>}
private fun <V : Any, T : SettingType<V>> setting(reference: SettingReference<V, T>): <no name provided><V, T>
// CHECK JVM_IR:
// Mangled name: IdeWizard#setting(SettingReference<1:0,1:1>){0§<kotlin.Any>;1§<SettingType<1:0>>}IdeWizard#setting.<no name provided><1:0,1:1>.<no name provided>
// Mangled name for the signature: setting(SettingReference<1:0,1:1>){0§<kotlin.Any>;1§<SettingType<1:0>>}IdeWizard#setting.<no name provided><1:0,1:1>
// CHECK JS_IR NATIVE:
// Mangled name: IdeWizard#setting(SettingReference<1:0,1:1>){0§<kotlin.Any>;1§<SettingType<1:0>>}.<no name provided>
// Mangled name for the signature: setting(SettingReference<1:0,1:1>){0§<kotlin.Any>;1§<SettingType<1:0>>}
local class <no name provided> : ReadWriteProperty<Any?, V?> {
// CHECK JVM_IR:
// Mangled name: IdeWizard#setting(SettingReference<2:0,2:1>){0§<kotlin.Any>;1§<SettingType<2:0>>}IdeWizard#setting.<no name provided><2:0,2:1>.<no name provided>#<init>(){}
// Mangled name for the signature: setting(SettingReference<2:0,2:1>){0§<kotlin.Any>;1§<SettingType<2:0>>}IdeWizard#setting.<no name provided><2:0,2:1><init>(){}
// CHECK JS_IR NATIVE:
// Mangled name: IdeWizard#setting(SettingReference<2:0,2:1>){0§<kotlin.Any>;1§<SettingType<2:0>>}.<no name provided>#<init>(){}
// Mangled name for the signature: setting(SettingReference<2:0,2:1>){0§<kotlin.Any>;1§<SettingType<2:0>>}<init>(){}
constructor() /* primary */
// CHECK JVM_IR:
// Mangled name: IdeWizard#setting(SettingReference<2:0,2:1>){0§<kotlin.Any>;1§<SettingType<2:0>>}IdeWizard#setting.<no name provided><2:0,2:1>.<no name provided>#getValue(kotlin.Any?;kotlin.reflect.KProperty<*>){}2:0?
// Mangled name for the signature: setting(SettingReference<2:0,2:1>){0§<kotlin.Any>;1§<SettingType<2:0>>}IdeWizard#setting.<no name provided><2:0,2:1>getValue(kotlin.Any?;kotlin.reflect.KProperty<*>){}2:0?
// CHECK JS_IR NATIVE:
// Mangled name: IdeWizard#setting(SettingReference<2:0,2:1>){0§<kotlin.Any>;1§<SettingType<2:0>>}.<no name provided>#getValue(kotlin.Any?;kotlin.reflect.KProperty<*>){}
// Mangled name for the signature: setting(SettingReference<2:0,2:1>){0§<kotlin.Any>;1§<SettingType<2:0>>}getValue(kotlin.Any?;kotlin.reflect.KProperty<*>){}
override operator fun getValue(thisRef: Any?, property: KProperty<*>): V?
// CHECK JVM_IR:
// Mangled name: IdeWizard#setting(SettingReference<2:0,2:1>){0§<kotlin.Any>;1§<SettingType<2:0>>}IdeWizard#setting.<no name provided><2:0,2:1>.<no name provided>#setValue(kotlin.Any?;kotlin.reflect.KProperty<*>;2:0?){}
// Mangled name for the signature: setting(SettingReference<2:0,2:1>){0§<kotlin.Any>;1§<SettingType<2:0>>}IdeWizard#setting.<no name provided><2:0,2:1>setValue(kotlin.Any?;kotlin.reflect.KProperty<*>;2:0?){}
// CHECK JS_IR NATIVE:
// Mangled name: IdeWizard#setting(SettingReference<2:0,2:1>){0§<kotlin.Any>;1§<SettingType<2:0>>}.<no name provided>#setValue(kotlin.Any?;kotlin.reflect.KProperty<*>;2:0?){}
// Mangled name for the signature: setting(SettingReference<2:0,2:1>){0§<kotlin.Any>;1§<SettingType<2:0>>}setValue(kotlin.Any?;kotlin.reflect.KProperty<*>;2:0?){}
override operator fun setValue(thisRef: Any?, property: KProperty<*>, value: V?): Unit
}
}
@@ -82,7 +49,6 @@ class SettingReference<V : Any, T : SettingType<V>> {
// Public signature: /SettingReference.t|-8767999791664836944[0]
// Public signature debug description: {}t
var t: T
field
// CHECK JVM_IR:
// Mangled name: SettingReference#<get-t>(){}1:1
// Public signature: /SettingReference.t.<get-t>|3876475218778608787[0]
@@ -103,7 +69,6 @@ class SettingReference<V : Any, T : SettingType<V>> {
// Public signature: /SettingReference.v|138869847852828796[0]
// Public signature debug description: {}v
var v: V
field
// CHECK JVM_IR:
// Mangled name: SettingReference#<get-v>(){}1:0
// Public signature: /SettingReference.v.<get-v>|-6358452650346304910[0]
@@ -136,7 +101,6 @@ class SettingType<out V : Any> {
// Public signature: /SettingType.type|-6051055617123801408[0]
// Public signature debug description: {}type
val type: KClass<out V>
field
// CHECK JVM_IR:
// Mangled name: SettingType#<get-type>(){}kotlin.reflect.KClass<out|1:0>
// Public signature: /SettingType.type.<get-type>|-782685829818054763[0]
@@ -2,9 +2,6 @@
// SKIP_KLIB_TEST
// WITH_REFLECT
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57778
import kotlin.reflect.KProperty1
private typealias PropAlias<T> = KProperty1<T, Any?>?
@@ -35,9 +35,7 @@ class Foo {
// Public signature debug description: box(){}
fun box(): String
// CHECK JVM_IR:
// Mangled name: PropAlias
// Public signature: [ File 'reflectGetOnNullableTypeAlias.kt' <- /PropAlias|null[0] ]
// CHECK JS_IR NATIVE:
// CHECK:
// Mangled name: PropAlias
// Public signature: [ File '/reflectGetOnNullableTypeAlias.kt' <- /PropAlias|null[0] ]
private typealias PropAlias<T : Any?> = KProperty1<T, Any?>?
@@ -1,8 +1,5 @@
// WITH_STDLIB
// MUTE_SIGNATURE_COMPARISON_K2: ANY
// ^ KT-57778
private fun test(x: Long) =
countIssues {
+(spentTime lessEq 2 * 60)
@@ -70,13 +70,9 @@ class Expression {
}
// CHECK JVM_IR:
// CHECK:
// Mangled name: #countIssues(kotlin.Function1<ArgumentsBuilder,kotlin.Unit>){}
// Mangled name for the signature: countIssues(kotlin.Function1<ArgumentsBuilder,kotlin.Unit>){}
// Public signature: [ File 'timesInBuilder.kt' <- /countIssues|-3006686104129982000[0] ]
// CHECK JS_IR NATIVE:
// Mangled name: #countIssues(kotlin.Function1<ArgumentsBuilder,kotlin.Unit>){}
// Mangled name for the signature: countIssues(kotlin.Function1<ArgumentsBuilder,kotlin.Unit>){}
// Public signature: [ File '/timesInBuilder.kt' <- /countIssues|-3006686104129982000[0] ]
private fun countIssues(restrictionsBuilder: @ExtensionFunctionType Function1<ArgumentsBuilder, Unit>): Unit
// CHECK JVM_IR:
@@ -119,12 +115,8 @@ infix fun <T : Comparable<T>> Column.lessEq(t: T): Expression
// Public signature debug description: select@Column(0:0;0:0){0§<kotlin.Comparable<0:0>>}
fun <T : Comparable<T>> Column.select(t: T, r: T): Expression
// CHECK JVM_IR:
// CHECK:
// Mangled name: #test(kotlin.Long){}
// Mangled name for the signature: test(kotlin.Long){}
// Public signature: [ File 'timesInBuilder.kt' <- /test|-2956403500052581138[0] ]
// CHECK JS_IR NATIVE:
// Mangled name: #test(kotlin.Long){}
// Mangled name for the signature: test(kotlin.Long){}
// Public signature: [ File '/timesInBuilder.kt' <- /test|-2956403500052581138[0] ]
private fun test(x: Long): Unit