[Inline] Add test on typeOf accessed via leaking private inline fun
KT-77293
diff --git a/analysis/low-level-api-fir/tests-gen/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLBlackBoxTestGenerated.java b/analysis/low-level-api-fir/tests-gen/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLBlackBoxTestGenerated.java
index b43790c..cbbaa81 100644
--- a/analysis/low-level-api-fir/tests-gen/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLBlackBoxTestGenerated.java
+++ b/analysis/low-level-api-fir/tests-gen/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLBlackBoxTestGenerated.java
@@ -55948,6 +55948,12 @@
}
@Test
+ @TestMetadata("inNestedPrivateInline.kt")
+ public void testInNestedPrivateInline() {
+ runTest("compiler/testData/codegen/box/reflection/typeOf/inNestedPrivateInline.kt");
+ }
+
+ @Test
@TestMetadata("inlineClasses.kt")
public void testInlineClasses() {
runTest("compiler/testData/codegen/box/reflection/typeOf/inlineClasses.kt");
diff --git a/analysis/low-level-api-fir/tests-gen/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLReversedBlackBoxTestGenerated.java b/analysis/low-level-api-fir/tests-gen/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLReversedBlackBoxTestGenerated.java
index 8961532..de04ac6 100644
--- a/analysis/low-level-api-fir/tests-gen/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLReversedBlackBoxTestGenerated.java
+++ b/analysis/low-level-api-fir/tests-gen/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLReversedBlackBoxTestGenerated.java
@@ -55948,6 +55948,12 @@
}
@Test
+ @TestMetadata("inNestedPrivateInline.kt")
+ public void testInNestedPrivateInline() {
+ runTest("compiler/testData/codegen/box/reflection/typeOf/inNestedPrivateInline.kt");
+ }
+
+ @Test
@TestMetadata("inlineClasses.kt")
public void testInlineClasses() {
runTest("compiler/testData/codegen/box/reflection/typeOf/inlineClasses.kt");
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 ea7f910..d4867fe 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
@@ -55547,6 +55547,12 @@
}
@Test
+ @TestMetadata("inNestedPrivateInline.kt")
+ public void testInNestedPrivateInline() {
+ runTest("compiler/testData/codegen/box/reflection/typeOf/inNestedPrivateInline.kt");
+ }
+
+ @Test
@TestMetadata("inlineClasses.kt")
public void testInlineClasses() {
runTest("compiler/testData/codegen/box/reflection/typeOf/inlineClasses.kt");
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 2172be1..9894f41 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
@@ -55547,6 +55547,12 @@
}
@Test
+ @TestMetadata("inNestedPrivateInline.kt")
+ public void testInNestedPrivateInline() {
+ runTest("compiler/testData/codegen/box/reflection/typeOf/inNestedPrivateInline.kt");
+ }
+
+ @Test
@TestMetadata("inlineClasses.kt")
public void testInlineClasses() {
runTest("compiler/testData/codegen/box/reflection/typeOf/inlineClasses.kt");
diff --git a/compiler/testData/codegen/box/reflection/typeOf/inNestedPrivateInline.kt b/compiler/testData/codegen/box/reflection/typeOf/inNestedPrivateInline.kt
new file mode 100644
index 0000000..3428f17
--- /dev/null
+++ b/compiler/testData/codegen/box/reflection/typeOf/inNestedPrivateInline.kt
@@ -0,0 +1,22 @@
+// WITH_REFLECT
+// TARGET_BACKEND: JVM
+// TARGET_BACKEND: NATIVE
+
+// FILE: A.kt
+package test;
+
+import kotlin.reflect.*
+
+class Pair<A, B>(val x: A, val y: B)
+
+private inline fun <reified T1> typeOfX(x: T1) = typeOf<T1>()
+private inline fun <reified T2, T3> typeOfPair(x: T2, y: T3) = typeOfX(Pair(x, y))
+internal inline fun <T4, T5> typeOfPair2(x: T4, y: T5) = typeOfPair(Pair(x, y), y)
+
+// FILE: B.kt
+import test.*
+
+fun box() : String {
+ if (typeOfPair2("1", 1).toString() != "test.Pair<test.Pair<T4, T5>, T3>") return "FAIL 3: ${typeOfPair2("1", 1)}"
+ return "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 ad84fc0..b66825a 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
@@ -54245,6 +54245,12 @@
}
@Test
+ @TestMetadata("inNestedPrivateInline.kt")
+ public void testInNestedPrivateInline() {
+ runTest("compiler/testData/codegen/box/reflection/typeOf/inNestedPrivateInline.kt");
+ }
+
+ @Test
@TestMetadata("inlineClasses.kt")
public void testInlineClasses() {
runTest("compiler/testData/codegen/box/reflection/typeOf/inlineClasses.kt");
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 e697803..787d55c 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
@@ -54517,6 +54517,12 @@
}
@Test
+ @TestMetadata("inNestedPrivateInline.kt")
+ public void testInNestedPrivateInline() {
+ runTest("compiler/testData/codegen/box/reflection/typeOf/inNestedPrivateInline.kt");
+ }
+
+ @Test
@TestMetadata("inlineClasses.kt")
public void testInlineClasses() {
runTest("compiler/testData/codegen/box/reflection/typeOf/inlineClasses.kt");
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 6fa58f0..952893e 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
@@ -54517,6 +54517,12 @@
}
@Test
+ @TestMetadata("inNestedPrivateInline.kt")
+ public void testInNestedPrivateInline() {
+ runTest("compiler/testData/codegen/box/reflection/typeOf/inNestedPrivateInline.kt");
+ }
+
+ @Test
@TestMetadata("inlineClasses.kt")
public void testInlineClasses() {
runTest("compiler/testData/codegen/box/reflection/typeOf/inlineClasses.kt");
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 c9504c2..f872e62 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
@@ -55547,6 +55547,12 @@
}
@Test
+ @TestMetadata("inNestedPrivateInline.kt")
+ public void testInNestedPrivateInline() {
+ runTest("compiler/testData/codegen/box/reflection/typeOf/inNestedPrivateInline.kt");
+ }
+
+ @Test
@TestMetadata("inlineClasses.kt")
public void testInlineClasses() {
runTest("compiler/testData/codegen/box/reflection/typeOf/inlineClasses.kt");
diff --git a/native/native.tests/codegen-box/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/FirNativeCodegenBoxTestGenerated.java b/native/native.tests/codegen-box/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/FirNativeCodegenBoxTestGenerated.java
index 29b57d4..35e6719 100644
--- a/native/native.tests/codegen-box/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/FirNativeCodegenBoxTestGenerated.java
+++ b/native/native.tests/codegen-box/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/FirNativeCodegenBoxTestGenerated.java
@@ -42569,6 +42569,12 @@
}
@Test
+ @TestMetadata("inNestedPrivateInline.kt")
+ public void testInNestedPrivateInline() {
+ runTest("compiler/testData/codegen/box/reflection/typeOf/inNestedPrivateInline.kt");
+ }
+
+ @Test
@TestMetadata("inlineClasses.kt")
public void testInlineClasses() {
runTest("compiler/testData/codegen/box/reflection/typeOf/inlineClasses.kt");
diff --git a/native/native.tests/codegen-box/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/FirNativeCodegenBoxTestNoPLGenerated.java b/native/native.tests/codegen-box/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/FirNativeCodegenBoxTestNoPLGenerated.java
index bee1ca1..7fa9aec 100644
--- a/native/native.tests/codegen-box/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/FirNativeCodegenBoxTestNoPLGenerated.java
+++ b/native/native.tests/codegen-box/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/FirNativeCodegenBoxTestNoPLGenerated.java
@@ -43627,6 +43627,12 @@
}
@Test
+ @TestMetadata("inNestedPrivateInline.kt")
+ public void testInNestedPrivateInline() {
+ runTest("compiler/testData/codegen/box/reflection/typeOf/inNestedPrivateInline.kt");
+ }
+
+ @Test
@TestMetadata("inlineClasses.kt")
public void testInlineClasses() {
runTest("compiler/testData/codegen/box/reflection/typeOf/inlineClasses.kt");
diff --git a/native/native.tests/codegen-box/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/NativeCodegenBoxTestGenerated.java b/native/native.tests/codegen-box/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/NativeCodegenBoxTestGenerated.java
index 73c5aa8..0d84cfc 100644
--- a/native/native.tests/codegen-box/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/NativeCodegenBoxTestGenerated.java
+++ b/native/native.tests/codegen-box/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/NativeCodegenBoxTestGenerated.java
@@ -42275,6 +42275,12 @@
}
@Test
+ @TestMetadata("inNestedPrivateInline.kt")
+ public void testInNestedPrivateInline() {
+ runTest("compiler/testData/codegen/box/reflection/typeOf/inNestedPrivateInline.kt");
+ }
+
+ @Test
@TestMetadata("inlineClasses.kt")
public void testInlineClasses() {
runTest("compiler/testData/codegen/box/reflection/typeOf/inlineClasses.kt");
diff --git a/native/native.tests/codegen-box/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/NativeCodegenBoxTestNoPLGenerated.java b/native/native.tests/codegen-box/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/NativeCodegenBoxTestNoPLGenerated.java
index 40e2c28..18fe690 100644
--- a/native/native.tests/codegen-box/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/NativeCodegenBoxTestNoPLGenerated.java
+++ b/native/native.tests/codegen-box/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/NativeCodegenBoxTestNoPLGenerated.java
@@ -43319,6 +43319,12 @@
}
@Test
+ @TestMetadata("inNestedPrivateInline.kt")
+ public void testInNestedPrivateInline() {
+ runTest("compiler/testData/codegen/box/reflection/typeOf/inNestedPrivateInline.kt");
+ }
+
+ @Test
@TestMetadata("inlineClasses.kt")
public void testInlineClasses() {
runTest("compiler/testData/codegen/box/reflection/typeOf/inlineClasses.kt");
diff --git a/native/native.tests/klib-ir-inliner/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/FirNativeCodegenBoxWithInlinedFunInKlibTestGenerated.java b/native/native.tests/klib-ir-inliner/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/FirNativeCodegenBoxWithInlinedFunInKlibTestGenerated.java
index 5ab282b..78360a8 100644
--- a/native/native.tests/klib-ir-inliner/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/FirNativeCodegenBoxWithInlinedFunInKlibTestGenerated.java
+++ b/native/native.tests/klib-ir-inliner/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/FirNativeCodegenBoxWithInlinedFunInKlibTestGenerated.java
@@ -42569,6 +42569,12 @@
}
@Test
+ @TestMetadata("inNestedPrivateInline.kt")
+ public void testInNestedPrivateInline() {
+ runTest("compiler/testData/codegen/box/reflection/typeOf/inNestedPrivateInline.kt");
+ }
+
+ @Test
@TestMetadata("inlineClasses.kt")
public void testInlineClasses() {
runTest("compiler/testData/codegen/box/reflection/typeOf/inlineClasses.kt");
diff --git a/native/native.tests/klib-ir-inliner/tests-gen/org/jetbrains/kotlin/konan/test/inlining/NativeUnboundIrSerializationTestGenerated.java b/native/native.tests/klib-ir-inliner/tests-gen/org/jetbrains/kotlin/konan/test/inlining/NativeUnboundIrSerializationTestGenerated.java
index 0b8e84f2..d297393 100644
--- a/native/native.tests/klib-ir-inliner/tests-gen/org/jetbrains/kotlin/konan/test/inlining/NativeUnboundIrSerializationTestGenerated.java
+++ b/native/native.tests/klib-ir-inliner/tests-gen/org/jetbrains/kotlin/konan/test/inlining/NativeUnboundIrSerializationTestGenerated.java
@@ -38011,6 +38011,12 @@
}
@Test
+ @TestMetadata("inNestedPrivateInline.kt")
+ public void testInNestedPrivateInline() {
+ runTest("compiler/testData/codegen/box/reflection/typeOf/inNestedPrivateInline.kt");
+ }
+
+ @Test
@TestMetadata("inlineClasses.kt")
public void testInlineClasses() {
runTest("compiler/testData/codegen/box/reflection/typeOf/inlineClasses.kt");
diff --git a/native/native.tests/klib-ir-inliner/tests-gen/org/jetbrains/kotlin/konan/test/serialization/NativeIrDeserializationTestGenerated.java b/native/native.tests/klib-ir-inliner/tests-gen/org/jetbrains/kotlin/konan/test/serialization/NativeIrDeserializationTestGenerated.java
index a3b5197..a2d2227 100644
--- a/native/native.tests/klib-ir-inliner/tests-gen/org/jetbrains/kotlin/konan/test/serialization/NativeIrDeserializationTestGenerated.java
+++ b/native/native.tests/klib-ir-inliner/tests-gen/org/jetbrains/kotlin/konan/test/serialization/NativeIrDeserializationTestGenerated.java
@@ -39997,6 +39997,12 @@
}
@Test
+ @TestMetadata("inNestedPrivateInline.kt")
+ public void testInNestedPrivateInline() {
+ runTest("compiler/testData/codegen/box/reflection/typeOf/inNestedPrivateInline.kt");
+ }
+
+ @Test
@TestMetadata("inlineClasses.kt")
public void testInlineClasses() {
runTest("compiler/testData/codegen/box/reflection/typeOf/inlineClasses.kt");
diff --git a/native/native.tests/klib-ir-inliner/tests-gen/org/jetbrains/kotlin/konan/test/serialization/NativeIrDeserializationWithInlinedFunInKlibTestGenerated.java b/native/native.tests/klib-ir-inliner/tests-gen/org/jetbrains/kotlin/konan/test/serialization/NativeIrDeserializationWithInlinedFunInKlibTestGenerated.java
index 35fd9d1..bcb2c6b 100644
--- a/native/native.tests/klib-ir-inliner/tests-gen/org/jetbrains/kotlin/konan/test/serialization/NativeIrDeserializationWithInlinedFunInKlibTestGenerated.java
+++ b/native/native.tests/klib-ir-inliner/tests-gen/org/jetbrains/kotlin/konan/test/serialization/NativeIrDeserializationWithInlinedFunInKlibTestGenerated.java
@@ -39997,6 +39997,12 @@
}
@Test
+ @TestMetadata("inNestedPrivateInline.kt")
+ public void testInNestedPrivateInline() {
+ runTest("compiler/testData/codegen/box/reflection/typeOf/inNestedPrivateInline.kt");
+ }
+
+ @Test
@TestMetadata("inlineClasses.kt")
public void testInlineClasses() {
runTest("compiler/testData/codegen/box/reflection/typeOf/inlineClasses.kt");