diff --git a/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/BoxJsTestGenerated.java b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/BoxJsTestGenerated.java index bf8eb5933e6..c233ce3c861 100644 --- a/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/BoxJsTestGenerated.java +++ b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/BoxJsTestGenerated.java @@ -86,6 +86,11 @@ public class BoxJsTestGenerated extends AbstractBoxJsTest { runTest("js/js.translator/testData/box/callableReference/function/classMemberAndNonExtensionCompatibility.kt"); } + @TestMetadata("classMemberDirectCache.kt") + public void testClassMemberDirectCache() throws Exception { + runTest("js/js.translator/testData/box/callableReference/function/classMemberDirectCache.kt"); + } + @TestMetadata("classMemberFromClass.kt") public void testClassMemberFromClass() throws Exception { runTest("js/js.translator/testData/box/callableReference/function/classMemberFromClass.kt"); @@ -196,6 +201,11 @@ public class BoxJsTestGenerated extends AbstractBoxJsTest { runTest("js/js.translator/testData/box/callableReference/function/extensionWithClosure.kt"); } + @TestMetadata("functionReferenceName.kt") + public void testFunctionReferenceName() throws Exception { + runTest("js/js.translator/testData/box/callableReference/function/functionReferenceName.kt"); + } + @TestMetadata("localAndTopLevelExtensions.kt") public void testLocalAndTopLevelExtensions() throws Exception { runTest("js/js.translator/testData/box/callableReference/function/localAndTopLevelExtensions.kt"); diff --git a/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/IrBoxJsTestGenerated.java b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/IrBoxJsTestGenerated.java index b7db4e375ef..4e9f33a992a 100644 --- a/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/IrBoxJsTestGenerated.java +++ b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/IrBoxJsTestGenerated.java @@ -86,6 +86,11 @@ public class IrBoxJsTestGenerated extends AbstractIrBoxJsTest { runTest("js/js.translator/testData/box/callableReference/function/classMemberAndNonExtensionCompatibility.kt"); } + @TestMetadata("classMemberDirectCache.kt") + public void testClassMemberDirectCache() throws Exception { + runTest("js/js.translator/testData/box/callableReference/function/classMemberDirectCache.kt"); + } + @TestMetadata("classMemberFromClass.kt") public void testClassMemberFromClass() throws Exception { runTest("js/js.translator/testData/box/callableReference/function/classMemberFromClass.kt"); @@ -196,6 +201,11 @@ public class IrBoxJsTestGenerated extends AbstractIrBoxJsTest { runTest("js/js.translator/testData/box/callableReference/function/extensionWithClosure.kt"); } + @TestMetadata("functionReferenceName.kt") + public void testFunctionReferenceName() throws Exception { + runTest("js/js.translator/testData/box/callableReference/function/functionReferenceName.kt"); + } + @TestMetadata("localAndTopLevelExtensions.kt") public void testLocalAndTopLevelExtensions() throws Exception { runTest("js/js.translator/testData/box/callableReference/function/localAndTopLevelExtensions.kt"); diff --git a/js/js.translator/testData/box/callableReference/function/classMemberDirectCache.kt b/js/js.translator/testData/box/callableReference/function/classMemberDirectCache.kt new file mode 100644 index 00000000000..bcc4dfea18f --- /dev/null +++ b/js/js.translator/testData/box/callableReference/function/classMemberDirectCache.kt @@ -0,0 +1,14 @@ +// IGNORE_BACKEND: JS + +package foo + +class A(val v: String) { + fun foo() = v +} + +fun box(): String { + val aRef1 = A::foo + val aRef2 = A::foo + if (aRef1 !== aRef2) return "Fail != " + return aRef1(A("O")) + aRef2(A("K")) +} diff --git a/js/js.translator/testData/box/callableReference/function/functionReferenceName.kt b/js/js.translator/testData/box/callableReference/function/functionReferenceName.kt index a41b9101b6a..410516b3de0 100644 --- a/js/js.translator/testData/box/callableReference/function/functionReferenceName.kt +++ b/js/js.translator/testData/box/callableReference/function/functionReferenceName.kt @@ -1,5 +1,4 @@ // EXPECTED_REACHABLE_NODES: 1109 -// This test was adapted from compiler/testData/codegen/box/callableReference/function/local/. package foo import kotlin.reflect.KFunction @@ -9,8 +8,6 @@ fun foo1(a: String) = "O" + a fun foo2(a: String, b: String) = a + b fun refName0(ref: KFunction) = ref.name -//fun refName1(ref: KFunction1) = ref.name -//fun refName2(ref: KFunction2) = ref.name fun box(): String { val name = refName0(::foo0) diff --git a/js/js.translator/testData/box/callableReference/property/accessViaSubclass.kt b/js/js.translator/testData/box/callableReference/property/accessViaSubclass.kt index 75a78ddd655..73ac33309ab 100644 --- a/js/js.translator/testData/box/callableReference/property/accessViaSubclass.kt +++ b/js/js.translator/testData/box/callableReference/property/accessViaSubclass.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1121 // This test was adapted from compiler/testData/codegen/box/callableReference/property/. package foo diff --git a/js/js.translator/testData/box/callableReference/property/delegatedMutable.kt b/js/js.translator/testData/box/callableReference/property/delegatedMutable.kt index 35b3e21b269..5b62945b3d4 100644 --- a/js/js.translator/testData/box/callableReference/property/delegatedMutable.kt +++ b/js/js.translator/testData/box/callableReference/property/delegatedMutable.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1125 // This test was adapted from compiler/testData/codegen/box/callableReference/property/. package foo diff --git a/js/js.translator/testData/box/callableReference/property/kClassInstanceIsInitializedFirst.kt b/js/js.translator/testData/box/callableReference/property/kClassInstanceIsInitializedFirst.kt index fa99b7757e4..fe8641ed76d 100644 --- a/js/js.translator/testData/box/callableReference/property/kClassInstanceIsInitializedFirst.kt +++ b/js/js.translator/testData/box/callableReference/property/kClassInstanceIsInitializedFirst.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1118 // This test was adapted from compiler/testData/codegen/box/callableReference/property/. package foo diff --git a/js/js.translator/testData/box/callableReference/property/memberProperty.kt b/js/js.translator/testData/box/callableReference/property/memberProperty.kt index 67c16af63e8..bce86f1f76a 100644 --- a/js/js.translator/testData/box/callableReference/property/memberProperty.kt +++ b/js/js.translator/testData/box/callableReference/property/memberProperty.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1127 package foo diff --git a/js/js.translator/testData/box/callableReference/property/overriddenInSubclass.kt b/js/js.translator/testData/box/callableReference/property/overriddenInSubclass.kt index 557e964a97f..eabcf4f329c 100644 --- a/js/js.translator/testData/box/callableReference/property/overriddenInSubclass.kt +++ b/js/js.translator/testData/box/callableReference/property/overriddenInSubclass.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1123 // This test was adapted from compiler/testData/codegen/box/callableReference/property/. package foo diff --git a/js/js.translator/testData/box/callableReference/property/simpleExtension.kt b/js/js.translator/testData/box/callableReference/property/simpleExtension.kt index eda40072d08..57acd327069 100644 --- a/js/js.translator/testData/box/callableReference/property/simpleExtension.kt +++ b/js/js.translator/testData/box/callableReference/property/simpleExtension.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1113 // This test was adapted from compiler/testData/codegen/box/callableReference/property/. package foo diff --git a/js/js.translator/testData/box/callableReference/property/simpleMember.kt b/js/js.translator/testData/box/callableReference/property/simpleMember.kt index cb1a8cdb31e..81d0c9e8a26 100644 --- a/js/js.translator/testData/box/callableReference/property/simpleMember.kt +++ b/js/js.translator/testData/box/callableReference/property/simpleMember.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1114 // This test was adapted from compiler/testData/codegen/box/callableReference/property/. package foo diff --git a/js/js.translator/testData/box/callableReference/property/simpleMutableExtension.kt b/js/js.translator/testData/box/callableReference/property/simpleMutableExtension.kt index 2e34a7c603f..a64388f9ca1 100644 --- a/js/js.translator/testData/box/callableReference/property/simpleMutableExtension.kt +++ b/js/js.translator/testData/box/callableReference/property/simpleMutableExtension.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1115 // This test was adapted from compiler/testData/codegen/box/callableReference/property/. package foo diff --git a/js/js.translator/testData/box/callableReference/property/topLevelVar.kt b/js/js.translator/testData/box/callableReference/property/topLevelVar.kt index ad167045ebe..a81d1de1857 100644 --- a/js/js.translator/testData/box/callableReference/property/topLevelVar.kt +++ b/js/js.translator/testData/box/callableReference/property/topLevelVar.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1119 package foo diff --git a/js/js.translator/testData/box/delegateProperty/delegateByExtensionProperty.kt b/js/js.translator/testData/box/delegateProperty/delegateByExtensionProperty.kt index d17b1d25efa..7b962080f76 100644 --- a/js/js.translator/testData/box/delegateProperty/delegateByExtensionProperty.kt +++ b/js/js.translator/testData/box/delegateProperty/delegateByExtensionProperty.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1158 package foo diff --git a/js/js.translator/testData/box/delegateProperty/delegateByTopLevelFun.kt b/js/js.translator/testData/box/delegateProperty/delegateByTopLevelFun.kt index 7e3d85d9fcb..0bc23eb265d 100644 --- a/js/js.translator/testData/box/delegateProperty/delegateByTopLevelFun.kt +++ b/js/js.translator/testData/box/delegateProperty/delegateByTopLevelFun.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1120 package foo diff --git a/js/js.translator/testData/box/delegateProperty/delegateByTopLevelProperty.kt b/js/js.translator/testData/box/delegateProperty/delegateByTopLevelProperty.kt index 60817953df7..2952b9ff553 100644 --- a/js/js.translator/testData/box/delegateProperty/delegateByTopLevelProperty.kt +++ b/js/js.translator/testData/box/delegateProperty/delegateByTopLevelProperty.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1120 package foo diff --git a/js/js.translator/testData/box/delegateProperty/delegateWithPropertyAccess.kt b/js/js.translator/testData/box/delegateProperty/delegateWithPropertyAccess.kt index 60817953df7..2952b9ff553 100644 --- a/js/js.translator/testData/box/delegateProperty/delegateWithPropertyAccess.kt +++ b/js/js.translator/testData/box/delegateProperty/delegateWithPropertyAccess.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1120 package foo diff --git a/js/js.translator/testData/box/delegateProperty/getAsExtensionFun.kt b/js/js.translator/testData/box/delegateProperty/getAsExtensionFun.kt index 436dae82a9e..5de16eb2a88 100644 --- a/js/js.translator/testData/box/delegateProperty/getAsExtensionFun.kt +++ b/js/js.translator/testData/box/delegateProperty/getAsExtensionFun.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1117 package foo diff --git a/js/js.translator/testData/box/delegateProperty/propertyMetadata.kt b/js/js.translator/testData/box/delegateProperty/propertyMetadata.kt index 915bc2c9fc8..c35c4c7c731 100644 --- a/js/js.translator/testData/box/delegateProperty/propertyMetadata.kt +++ b/js/js.translator/testData/box/delegateProperty/propertyMetadata.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1123 package foo diff --git a/js/js.translator/testData/box/delegateProperty/setAsExtensionFun.kt b/js/js.translator/testData/box/delegateProperty/setAsExtensionFun.kt index 8c3689f2a8a..6b5c0a4b2db 100644 --- a/js/js.translator/testData/box/delegateProperty/setAsExtensionFun.kt +++ b/js/js.translator/testData/box/delegateProperty/setAsExtensionFun.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1119 package foo diff --git a/js/js.translator/testData/box/delegateProperty/simple.kt b/js/js.translator/testData/box/delegateProperty/simple.kt index d5ca9c62fa0..7488e55cb2f 100644 --- a/js/js.translator/testData/box/delegateProperty/simple.kt +++ b/js/js.translator/testData/box/delegateProperty/simple.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1122 package foo diff --git a/js/js.translator/testData/box/delegateProperty/topLevelVal.kt b/js/js.translator/testData/box/delegateProperty/topLevelVal.kt index 7973ee3775f..d9cb25cacc6 100644 --- a/js/js.translator/testData/box/delegateProperty/topLevelVal.kt +++ b/js/js.translator/testData/box/delegateProperty/topLevelVal.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1117 package foo diff --git a/js/js.translator/testData/box/delegateProperty/topLevelVar.kt b/js/js.translator/testData/box/delegateProperty/topLevelVar.kt index fa1f4bc3550..7b8b60eef69 100644 --- a/js/js.translator/testData/box/delegateProperty/topLevelVar.kt +++ b/js/js.translator/testData/box/delegateProperty/topLevelVar.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1119 package foo diff --git a/js/js.translator/testData/box/delegateProperty/withGenerics.kt b/js/js.translator/testData/box/delegateProperty/withGenerics.kt index 5ce1fa112ff..5d48f8e504a 100644 --- a/js/js.translator/testData/box/delegateProperty/withGenerics.kt +++ b/js/js.translator/testData/box/delegateProperty/withGenerics.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1123 package foo diff --git a/js/js.translator/testData/box/delegation/delegationExtensionPropertyDelegated.kt b/js/js.translator/testData/box/delegation/delegationExtensionPropertyDelegated.kt index 67e74299e5d..1213fcabf3a 100644 --- a/js/js.translator/testData/box/delegation/delegationExtensionPropertyDelegated.kt +++ b/js/js.translator/testData/box/delegation/delegationExtensionPropertyDelegated.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1164 package foo diff --git a/js/js.translator/testData/box/multiPackage/reflectionFromOtherPackage.kt b/js/js.translator/testData/box/multiPackage/reflectionFromOtherPackage.kt index 1212cedd024..0ed1b7b4e60 100644 --- a/js/js.translator/testData/box/multiPackage/reflectionFromOtherPackage.kt +++ b/js/js.translator/testData/box/multiPackage/reflectionFromOtherPackage.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1127 // FILE: a.kt package bar