From 4c93e9cff6762c0bc5fdb40c977bb2d948b34815 Mon Sep 17 00:00:00 2001 From: Kirill Rakhman Date: Tue, 5 Mar 2024 16:14:27 +0100 Subject: [PATCH] [FIR] Fix captured type arguments of local class as callable reference LHS #KT-66267 --- ...LFirBlackBoxCodegenBasedTestGenerated.java | 6 ++++ ...rsedBlackBoxCodegenBasedTestGenerated.java | 6 ++++ ...tsOfQualifierOfCallableReferenceChecker.kt | 1 + ...LightTreeBlackBoxCodegenTestGenerated.java | 6 ++++ ...2IrFakeOverrideGeneratorTestGenerated.java | 6 ++++ .../FirPsiBlackBoxCodegenTestGenerated.java | 6 ++++ .../FirDoubleColonExpressionResolver.kt | 34 +++++++++++++------ .../callableReferencetoInnerAndLocal.kt | 13 +++++++ .../JvmAbiConsistencyTestBoxGenerated.java | 6 ++++ .../codegen/BlackBoxCodegenTestGenerated.java | 6 ++++ .../IrBlackBoxCodegenTestGenerated.java | 6 ++++ ...kBoxCodegenWithIrInlinerTestGenerated.java | 6 ++++ ...xCodegenTestWithInlineScopesGenerated.java | 6 ++++ .../LightAnalysisModeTestGenerated.java | 5 +++ .../fir/FirJsCodegenBoxTestGenerated.java | 6 ++++ .../fir/FirJsES6CodegenBoxTestGenerated.java | 6 ++++ .../test/ir/IrJsCodegenBoxTestGenerated.java | 6 ++++ .../ir/IrJsES6CodegenBoxTestGenerated.java | 6 ++++ .../FirNativeCodegenBoxTestGenerated.java | 6 ++++ .../FirNativeCodegenBoxTestNoPLGenerated.java | 6 ++++ .../NativeCodegenBoxTestGenerated.java | 6 ++++ .../NativeCodegenBoxTestNoPLGenerated.java | 6 ++++ .../FirWasmJsCodegenBoxTestGenerated.java | 6 ++++ .../test/K1WasmCodegenBoxTestGenerated.java | 6 ++++ 24 files changed, 163 insertions(+), 10 deletions(-) create mode 100644 compiler/testData/codegen/box/callableReference/callableReferencetoInnerAndLocal.kt diff --git a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirBlackBoxCodegenBasedTestGenerated.java b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirBlackBoxCodegenBasedTestGenerated.java index 4a081de4e39..3349c1fc09b 100644 --- a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirBlackBoxCodegenBasedTestGenerated.java +++ b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirBlackBoxCodegenBasedTestGenerated.java @@ -4810,6 +4810,12 @@ public class LLFirBlackBoxCodegenBasedTestGenerated extends AbstractLLFirBlackBo runTest("compiler/testData/codegen/box/callableReference/callableReferenceOfStaticMethod.kt"); } + @Test + @TestMetadata("callableReferencetoInnerAndLocal.kt") + public void testCallableReferencetoInnerAndLocal() { + runTest("compiler/testData/codegen/box/callableReference/callableReferencetoInnerAndLocal.kt"); + } + @Test @TestMetadata("charArrayOf.kt") public void testCharArrayOf() { diff --git a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirReversedBlackBoxCodegenBasedTestGenerated.java b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirReversedBlackBoxCodegenBasedTestGenerated.java index 16713b69aa5..e518a1a2a0b 100644 --- a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirReversedBlackBoxCodegenBasedTestGenerated.java +++ b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirReversedBlackBoxCodegenBasedTestGenerated.java @@ -4810,6 +4810,12 @@ public class LLFirReversedBlackBoxCodegenBasedTestGenerated extends AbstractLLFi runTest("compiler/testData/codegen/box/callableReference/callableReferenceOfStaticMethod.kt"); } + @Test + @TestMetadata("callableReferencetoInnerAndLocal.kt") + public void testCallableReferencetoInnerAndLocal() { + runTest("compiler/testData/codegen/box/callableReference/callableReferencetoInnerAndLocal.kt"); + } + @Test @TestMetadata("charArrayOf.kt") public void testCharArrayOf() { diff --git a/compiler/fir/checkers/src/org/jetbrains/kotlin/fir/analysis/checkers/expression/FirTypeArgumentsOfQualifierOfCallableReferenceChecker.kt b/compiler/fir/checkers/src/org/jetbrains/kotlin/fir/analysis/checkers/expression/FirTypeArgumentsOfQualifierOfCallableReferenceChecker.kt index 400fbf508a3..dba1b8bec32 100644 --- a/compiler/fir/checkers/src/org/jetbrains/kotlin/fir/analysis/checkers/expression/FirTypeArgumentsOfQualifierOfCallableReferenceChecker.kt +++ b/compiler/fir/checkers/src/org/jetbrains/kotlin/fir/analysis/checkers/expression/FirTypeArgumentsOfQualifierOfCallableReferenceChecker.kt @@ -23,6 +23,7 @@ object FirTypeArgumentsOfQualifierOfCallableReferenceChecker : FirCallableRefere val lhs = expression.explicitReceiver as? FirResolvedQualifier ?: return val correspondingDeclaration = lhs.symbol ?: return + // TODO(KT-66344) Support inner classes var typeArgumentsWithSourceInfo = lhs.typeArguments.toTypeArgumentsWithSourceInfo() var typeParameterSymbols = correspondingDeclaration.typeParameterSymbols.filter { it.containingDeclarationSymbol is FirClassLikeSymbol } if (typeParameterSymbols.size != typeArgumentsWithSourceInfo.size) { diff --git a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirLightTreeBlackBoxCodegenTestGenerated.java b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirLightTreeBlackBoxCodegenTestGenerated.java index 47e39b5417f..20ec2c1fa19 100644 --- a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirLightTreeBlackBoxCodegenTestGenerated.java +++ b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirLightTreeBlackBoxCodegenTestGenerated.java @@ -4793,6 +4793,12 @@ public class FirLightTreeBlackBoxCodegenTestGenerated extends AbstractFirLightTr runTest("compiler/testData/codegen/box/callableReference/callableReferenceOfStaticMethod.kt"); } + @Test + @TestMetadata("callableReferencetoInnerAndLocal.kt") + public void testCallableReferencetoInnerAndLocal() { + runTest("compiler/testData/codegen/box/callableReference/callableReferencetoInnerAndLocal.kt"); + } + @Test @TestMetadata("charArrayOf.kt") public void testCharArrayOf() { diff --git a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirLightTreeBlackBoxCodegenWithFir2IrFakeOverrideGeneratorTestGenerated.java b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirLightTreeBlackBoxCodegenWithFir2IrFakeOverrideGeneratorTestGenerated.java index ff910530d2f..c9e8cb0d738 100644 --- a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirLightTreeBlackBoxCodegenWithFir2IrFakeOverrideGeneratorTestGenerated.java +++ b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirLightTreeBlackBoxCodegenWithFir2IrFakeOverrideGeneratorTestGenerated.java @@ -4793,6 +4793,12 @@ public class FirLightTreeBlackBoxCodegenWithFir2IrFakeOverrideGeneratorTestGener runTest("compiler/testData/codegen/box/callableReference/callableReferenceOfStaticMethod.kt"); } + @Test + @TestMetadata("callableReferencetoInnerAndLocal.kt") + public void testCallableReferencetoInnerAndLocal() { + runTest("compiler/testData/codegen/box/callableReference/callableReferencetoInnerAndLocal.kt"); + } + @Test @TestMetadata("charArrayOf.kt") public void testCharArrayOf() { diff --git a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirPsiBlackBoxCodegenTestGenerated.java b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirPsiBlackBoxCodegenTestGenerated.java index fa7ce3762a6..32919f2899d 100644 --- a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirPsiBlackBoxCodegenTestGenerated.java +++ b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirPsiBlackBoxCodegenTestGenerated.java @@ -4793,6 +4793,12 @@ public class FirPsiBlackBoxCodegenTestGenerated extends AbstractFirPsiBlackBoxCo runTest("compiler/testData/codegen/box/callableReference/callableReferenceOfStaticMethod.kt"); } + @Test + @TestMetadata("callableReferencetoInnerAndLocal.kt") + public void testCallableReferencetoInnerAndLocal() { + runTest("compiler/testData/codegen/box/callableReference/callableReferencetoInnerAndLocal.kt"); + } + @Test @TestMetadata("charArrayOf.kt") public void testCharArrayOf() { diff --git a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/FirDoubleColonExpressionResolver.kt b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/FirDoubleColonExpressionResolver.kt index 113c01a3888..50421715d17 100644 --- a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/FirDoubleColonExpressionResolver.kt +++ b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/FirDoubleColonExpressionResolver.kt @@ -9,11 +9,14 @@ package org.jetbrains.kotlin.fir.resolve import org.jetbrains.kotlin.descriptors.ClassKind import org.jetbrains.kotlin.fir.FirSession +import org.jetbrains.kotlin.fir.declarations.FirOuterClassTypeParameterRef import org.jetbrains.kotlin.fir.declarations.FirRegularClass import org.jetbrains.kotlin.fir.declarations.FirTypeAlias import org.jetbrains.kotlin.fir.declarations.utils.expandedConeType +import org.jetbrains.kotlin.fir.declarations.utils.isLocal import org.jetbrains.kotlin.fir.expressions.* import org.jetbrains.kotlin.fir.references.FirNamedReference +import org.jetbrains.kotlin.fir.symbols.impl.FirClassSymbol import org.jetbrains.kotlin.fir.types.* import org.jetbrains.kotlin.fir.types.impl.ConeClassLikeTypeImpl import org.jetbrains.kotlin.types.Variance @@ -145,17 +148,28 @@ class FirDoubleColonExpressionResolver(private val session: FirSession) { firClassLikeDeclaration.symbol.toLookupTag(), Array(firClassLikeDeclaration.typeParameters.size) { index -> val typeArgument = expression.typeArguments.getOrNull(index) - if (typeArgument == null) ConeStarProjection - else when (typeArgument) { - is FirTypeProjectionWithVariance -> { - val coneType = typeArgument.typeRef.coneType - when (typeArgument.variance) { - Variance.INVARIANT -> coneType - Variance.IN_VARIANCE -> ConeKotlinTypeProjectionIn(coneType) - Variance.OUT_VARIANCE -> ConeKotlinTypeProjectionOut(coneType) - } + if (typeArgument == null) { + // We currently only support local classes with captured type parameters from non-classes + // (i.e. local class in generic function). + // TODO(KT-66344) Support inner classes + val typeParameter = firClassLikeDeclaration.typeParameters[0] + if (firClassLikeDeclaration.isLocal && typeParameter is FirOuterClassTypeParameterRef && typeParameter.symbol.containingDeclarationSymbol !is FirClassSymbol) { + typeParameter.symbol.defaultType + } else { + ConeStarProjection + } + } else { + when (typeArgument) { + is FirTypeProjectionWithVariance -> { + val coneType = typeArgument.typeRef.coneType + when (typeArgument.variance) { + Variance.INVARIANT -> coneType + Variance.IN_VARIANCE -> ConeKotlinTypeProjectionIn(coneType) + Variance.OUT_VARIANCE -> ConeKotlinTypeProjectionOut(coneType) + } + } + else -> ConeStarProjection } - else -> ConeStarProjection } }, isNullable = resolvedExpression.isNullableLHSForCallableReference diff --git a/compiler/testData/codegen/box/callableReference/callableReferencetoInnerAndLocal.kt b/compiler/testData/codegen/box/callableReference/callableReferencetoInnerAndLocal.kt new file mode 100644 index 00000000000..1e3cc9f5a5c --- /dev/null +++ b/compiler/testData/codegen/box/callableReference/callableReferencetoInnerAndLocal.kt @@ -0,0 +1,13 @@ +import kotlin.reflect.KProperty1 + +fun genericFun(value: T): T { + class Local(val item: T) + + val unwrapItem: KProperty1 = Local::item + + return unwrapItem(Local(value)) +} + +fun box(): String { + return genericFun("OK") +} \ No newline at end of file diff --git a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/JvmAbiConsistencyTestBoxGenerated.java b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/JvmAbiConsistencyTestBoxGenerated.java index de5f305430d..a13844011c6 100644 --- a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/JvmAbiConsistencyTestBoxGenerated.java +++ b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/JvmAbiConsistencyTestBoxGenerated.java @@ -4793,6 +4793,12 @@ public class JvmAbiConsistencyTestBoxGenerated extends AbstractJvmAbiConsistency runTest("compiler/testData/codegen/box/callableReference/callableReferenceOfStaticMethod.kt"); } + @Test + @TestMetadata("callableReferencetoInnerAndLocal.kt") + public void testCallableReferencetoInnerAndLocal() { + runTest("compiler/testData/codegen/box/callableReference/callableReferencetoInnerAndLocal.kt"); + } + @Test @TestMetadata("charArrayOf.kt") public void testCharArrayOf() { diff --git a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/BlackBoxCodegenTestGenerated.java b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/BlackBoxCodegenTestGenerated.java index 9dfbe9f95a9..70fcccb17ff 100644 --- a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/BlackBoxCodegenTestGenerated.java +++ b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/BlackBoxCodegenTestGenerated.java @@ -4595,6 +4595,12 @@ public class BlackBoxCodegenTestGenerated extends AbstractBlackBoxCodegenTest { runTest("compiler/testData/codegen/box/callableReference/callableReferenceOfStaticMethod.kt"); } + @Test + @TestMetadata("callableReferencetoInnerAndLocal.kt") + public void testCallableReferencetoInnerAndLocal() { + runTest("compiler/testData/codegen/box/callableReference/callableReferencetoInnerAndLocal.kt"); + } + @Test @TestMetadata("charArrayOf.kt") public void testCharArrayOf() { diff --git a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenTestGenerated.java b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenTestGenerated.java index 1961260c955..11f7b1c3a9f 100644 --- a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenTestGenerated.java +++ b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenTestGenerated.java @@ -4793,6 +4793,12 @@ public class IrBlackBoxCodegenTestGenerated extends AbstractIrBlackBoxCodegenTes runTest("compiler/testData/codegen/box/callableReference/callableReferenceOfStaticMethod.kt"); } + @Test + @TestMetadata("callableReferencetoInnerAndLocal.kt") + public void testCallableReferencetoInnerAndLocal() { + runTest("compiler/testData/codegen/box/callableReference/callableReferencetoInnerAndLocal.kt"); + } + @Test @TestMetadata("charArrayOf.kt") public void testCharArrayOf() { diff --git a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenWithIrInlinerTestGenerated.java b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenWithIrInlinerTestGenerated.java index a0cc63ab752..86006c0eb7a 100644 --- a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenWithIrInlinerTestGenerated.java +++ b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenWithIrInlinerTestGenerated.java @@ -4793,6 +4793,12 @@ public class IrBlackBoxCodegenWithIrInlinerTestGenerated extends AbstractIrBlack runTest("compiler/testData/codegen/box/callableReference/callableReferenceOfStaticMethod.kt"); } + @Test + @TestMetadata("callableReferencetoInnerAndLocal.kt") + public void testCallableReferencetoInnerAndLocal() { + runTest("compiler/testData/codegen/box/callableReference/callableReferencetoInnerAndLocal.kt"); + } + @Test @TestMetadata("charArrayOf.kt") public void testCharArrayOf() { diff --git a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/inlineScopes/FirBlackBoxCodegenTestWithInlineScopesGenerated.java b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/inlineScopes/FirBlackBoxCodegenTestWithInlineScopesGenerated.java index e372c316ade..879dccabd76 100644 --- a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/inlineScopes/FirBlackBoxCodegenTestWithInlineScopesGenerated.java +++ b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/inlineScopes/FirBlackBoxCodegenTestWithInlineScopesGenerated.java @@ -4793,6 +4793,12 @@ public class FirBlackBoxCodegenTestWithInlineScopesGenerated extends AbstractFir runTest("compiler/testData/codegen/box/callableReference/callableReferenceOfStaticMethod.kt"); } + @Test + @TestMetadata("callableReferencetoInnerAndLocal.kt") + public void testCallableReferencetoInnerAndLocal() { + runTest("compiler/testData/codegen/box/callableReference/callableReferencetoInnerAndLocal.kt"); + } + @Test @TestMetadata("charArrayOf.kt") public void testCharArrayOf() { diff --git a/compiler/tests-gen/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java b/compiler/tests-gen/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java index 9a7a4d3605f..a4adb941a04 100644 --- a/compiler/tests-gen/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java +++ b/compiler/tests-gen/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java @@ -4195,6 +4195,11 @@ public class LightAnalysisModeTestGenerated extends AbstractLightAnalysisModeTes runTest("compiler/testData/codegen/box/callableReference/callableReferenceOfStaticMethod.kt"); } + @TestMetadata("callableReferencetoInnerAndLocal.kt") + public void testCallableReferencetoInnerAndLocal() { + runTest("compiler/testData/codegen/box/callableReference/callableReferencetoInnerAndLocal.kt"); + } + @TestMetadata("charArrayOf.kt") public void testCharArrayOf() { runTest("compiler/testData/codegen/box/callableReference/charArrayOf.kt"); diff --git a/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/fir/FirJsCodegenBoxTestGenerated.java b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/fir/FirJsCodegenBoxTestGenerated.java index 7c803dea786..c15aa3bc861 100644 --- a/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/fir/FirJsCodegenBoxTestGenerated.java +++ b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/fir/FirJsCodegenBoxTestGenerated.java @@ -3551,6 +3551,12 @@ public class FirJsCodegenBoxTestGenerated extends AbstractFirJsCodegenBoxTest { runTest("compiler/testData/codegen/box/callableReference/callableReferenceOfObjectMethod.kt"); } + @Test + @TestMetadata("callableReferencetoInnerAndLocal.kt") + public void testCallableReferencetoInnerAndLocal() { + runTest("compiler/testData/codegen/box/callableReference/callableReferencetoInnerAndLocal.kt"); + } + @Test @TestMetadata("charArrayOf.kt") public void testCharArrayOf() { diff --git a/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/fir/FirJsES6CodegenBoxTestGenerated.java b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/fir/FirJsES6CodegenBoxTestGenerated.java index c6b3eb8e7a0..0b3ee63fc9f 100644 --- a/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/fir/FirJsES6CodegenBoxTestGenerated.java +++ b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/fir/FirJsES6CodegenBoxTestGenerated.java @@ -3551,6 +3551,12 @@ public class FirJsES6CodegenBoxTestGenerated extends AbstractFirJsES6CodegenBoxT runTest("compiler/testData/codegen/box/callableReference/callableReferenceOfObjectMethod.kt"); } + @Test + @TestMetadata("callableReferencetoInnerAndLocal.kt") + public void testCallableReferencetoInnerAndLocal() { + runTest("compiler/testData/codegen/box/callableReference/callableReferencetoInnerAndLocal.kt"); + } + @Test @TestMetadata("charArrayOf.kt") public void testCharArrayOf() { diff --git a/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/ir/IrJsCodegenBoxTestGenerated.java b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/ir/IrJsCodegenBoxTestGenerated.java index d269ca8bfc7..7b649b0e187 100644 --- a/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/ir/IrJsCodegenBoxTestGenerated.java +++ b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/ir/IrJsCodegenBoxTestGenerated.java @@ -3551,6 +3551,12 @@ public class IrJsCodegenBoxTestGenerated extends AbstractIrJsCodegenBoxTest { runTest("compiler/testData/codegen/box/callableReference/callableReferenceOfObjectMethod.kt"); } + @Test + @TestMetadata("callableReferencetoInnerAndLocal.kt") + public void testCallableReferencetoInnerAndLocal() { + runTest("compiler/testData/codegen/box/callableReference/callableReferencetoInnerAndLocal.kt"); + } + @Test @TestMetadata("charArrayOf.kt") public void testCharArrayOf() { diff --git a/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/ir/IrJsES6CodegenBoxTestGenerated.java b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/ir/IrJsES6CodegenBoxTestGenerated.java index a40ca213201..503d79bcc3e 100644 --- a/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/ir/IrJsES6CodegenBoxTestGenerated.java +++ b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/ir/IrJsES6CodegenBoxTestGenerated.java @@ -3551,6 +3551,12 @@ public class IrJsES6CodegenBoxTestGenerated extends AbstractIrJsES6CodegenBoxTes runTest("compiler/testData/codegen/box/callableReference/callableReferenceOfObjectMethod.kt"); } + @Test + @TestMetadata("callableReferencetoInnerAndLocal.kt") + public void testCallableReferencetoInnerAndLocal() { + runTest("compiler/testData/codegen/box/callableReference/callableReferencetoInnerAndLocal.kt"); + } + @Test @TestMetadata("charArrayOf.kt") public void testCharArrayOf() { diff --git a/native/native.tests/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/FirNativeCodegenBoxTestGenerated.java b/native/native.tests/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/FirNativeCodegenBoxTestGenerated.java index 35b5c1d777f..2ca1e52fc2f 100644 --- a/native/native.tests/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/FirNativeCodegenBoxTestGenerated.java +++ b/native/native.tests/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/FirNativeCodegenBoxTestGenerated.java @@ -3637,6 +3637,12 @@ public class FirNativeCodegenBoxTestGenerated extends AbstractNativeCodegenBoxTe runTest("compiler/testData/codegen/box/callableReference/callableReferenceOfObjectMethod.kt"); } + @Test + @TestMetadata("callableReferencetoInnerAndLocal.kt") + public void testCallableReferencetoInnerAndLocal() { + runTest("compiler/testData/codegen/box/callableReference/callableReferencetoInnerAndLocal.kt"); + } + @Test @TestMetadata("charArrayOf.kt") public void testCharArrayOf() { diff --git a/native/native.tests/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/FirNativeCodegenBoxTestNoPLGenerated.java b/native/native.tests/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/FirNativeCodegenBoxTestNoPLGenerated.java index a5f6588149c..d7389927955 100644 --- a/native/native.tests/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/FirNativeCodegenBoxTestNoPLGenerated.java +++ b/native/native.tests/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/FirNativeCodegenBoxTestNoPLGenerated.java @@ -3721,6 +3721,12 @@ public class FirNativeCodegenBoxTestNoPLGenerated extends AbstractNativeCodegenB runTest("compiler/testData/codegen/box/callableReference/callableReferenceOfObjectMethod.kt"); } + @Test + @TestMetadata("callableReferencetoInnerAndLocal.kt") + public void testCallableReferencetoInnerAndLocal() { + runTest("compiler/testData/codegen/box/callableReference/callableReferencetoInnerAndLocal.kt"); + } + @Test @TestMetadata("charArrayOf.kt") public void testCharArrayOf() { diff --git a/native/native.tests/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/NativeCodegenBoxTestGenerated.java b/native/native.tests/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/NativeCodegenBoxTestGenerated.java index a18667ab273..67933231469 100644 --- a/native/native.tests/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/NativeCodegenBoxTestGenerated.java +++ b/native/native.tests/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/NativeCodegenBoxTestGenerated.java @@ -3553,6 +3553,12 @@ public class NativeCodegenBoxTestGenerated extends AbstractNativeCodegenBoxTest runTest("compiler/testData/codegen/box/callableReference/callableReferenceOfObjectMethod.kt"); } + @Test + @TestMetadata("callableReferencetoInnerAndLocal.kt") + public void testCallableReferencetoInnerAndLocal() { + runTest("compiler/testData/codegen/box/callableReference/callableReferencetoInnerAndLocal.kt"); + } + @Test @TestMetadata("charArrayOf.kt") public void testCharArrayOf() { diff --git a/native/native.tests/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/NativeCodegenBoxTestNoPLGenerated.java b/native/native.tests/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/NativeCodegenBoxTestNoPLGenerated.java index a871d944ec1..18986a808e0 100644 --- a/native/native.tests/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/NativeCodegenBoxTestNoPLGenerated.java +++ b/native/native.tests/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/NativeCodegenBoxTestNoPLGenerated.java @@ -3638,6 +3638,12 @@ public class NativeCodegenBoxTestNoPLGenerated extends AbstractNativeCodegenBoxT runTest("compiler/testData/codegen/box/callableReference/callableReferenceOfObjectMethod.kt"); } + @Test + @TestMetadata("callableReferencetoInnerAndLocal.kt") + public void testCallableReferencetoInnerAndLocal() { + runTest("compiler/testData/codegen/box/callableReference/callableReferencetoInnerAndLocal.kt"); + } + @Test @TestMetadata("charArrayOf.kt") public void testCharArrayOf() { diff --git a/wasm/wasm.tests/tests-gen/org/jetbrains/kotlin/wasm/test/FirWasmJsCodegenBoxTestGenerated.java b/wasm/wasm.tests/tests-gen/org/jetbrains/kotlin/wasm/test/FirWasmJsCodegenBoxTestGenerated.java index 7463cd070fc..d54c2e60038 100644 --- a/wasm/wasm.tests/tests-gen/org/jetbrains/kotlin/wasm/test/FirWasmJsCodegenBoxTestGenerated.java +++ b/wasm/wasm.tests/tests-gen/org/jetbrains/kotlin/wasm/test/FirWasmJsCodegenBoxTestGenerated.java @@ -3539,6 +3539,12 @@ public class FirWasmJsCodegenBoxTestGenerated extends AbstractFirWasmJsCodegenBo runTest("compiler/testData/codegen/box/callableReference/callableReferenceOfObjectMethod.kt"); } + @Test + @TestMetadata("callableReferencetoInnerAndLocal.kt") + public void testCallableReferencetoInnerAndLocal() { + runTest("compiler/testData/codegen/box/callableReference/callableReferencetoInnerAndLocal.kt"); + } + @Test @TestMetadata("charArrayOf.kt") public void testCharArrayOf() { diff --git a/wasm/wasm.tests/tests-gen/org/jetbrains/kotlin/wasm/test/K1WasmCodegenBoxTestGenerated.java b/wasm/wasm.tests/tests-gen/org/jetbrains/kotlin/wasm/test/K1WasmCodegenBoxTestGenerated.java index caff54727af..a0d33f94bad 100644 --- a/wasm/wasm.tests/tests-gen/org/jetbrains/kotlin/wasm/test/K1WasmCodegenBoxTestGenerated.java +++ b/wasm/wasm.tests/tests-gen/org/jetbrains/kotlin/wasm/test/K1WasmCodegenBoxTestGenerated.java @@ -3539,6 +3539,12 @@ public class K1WasmCodegenBoxTestGenerated extends AbstractK1WasmCodegenBoxTest runTest("compiler/testData/codegen/box/callableReference/callableReferenceOfObjectMethod.kt"); } + @Test + @TestMetadata("callableReferencetoInnerAndLocal.kt") + public void testCallableReferencetoInnerAndLocal() { + runTest("compiler/testData/codegen/box/callableReference/callableReferencetoInnerAndLocal.kt"); + } + @Test @TestMetadata("charArrayOf.kt") public void testCharArrayOf() {