[TEST] Cover expect value class private constructor with test
KT-68688
Review: https://jetbrains.team/p/kt/reviews/16561
diff --git a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/DiagnosticCompilerTestFE10TestdataTestGenerated.java b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/DiagnosticCompilerTestFE10TestdataTestGenerated.java
index 04c7d98..702caae 100644
--- a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/DiagnosticCompilerTestFE10TestdataTestGenerated.java
+++ b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/DiagnosticCompilerTestFE10TestdataTestGenerated.java
@@ -26449,6 +26449,12 @@
}
@Test
+ @TestMetadata("valueClassWithPrivateConstructor.kt")
+ public void testValueClassWithPrivateConstructor() {
+ runTest("compiler/testData/diagnostics/tests/multiplatform/valueClassWithPrivateConstructor.kt");
+ }
+
+ @Test
@TestMetadata("varSetterVisibility.kt")
public void testVarSetterVisibility() {
runTest("compiler/testData/diagnostics/tests/multiplatform/varSetterVisibility.kt");
diff --git a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated.java b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated.java
index 080efe4..9391281 100644
--- a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated.java
+++ b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated.java
@@ -26449,6 +26449,12 @@
}
@Test
+ @TestMetadata("valueClassWithPrivateConstructor.kt")
+ public void testValueClassWithPrivateConstructor() {
+ runTest("compiler/testData/diagnostics/tests/multiplatform/valueClassWithPrivateConstructor.kt");
+ }
+
+ @Test
@TestMetadata("varSetterVisibility.kt")
public void testVarSetterVisibility() {
runTest("compiler/testData/diagnostics/tests/multiplatform/varSetterVisibility.kt");
diff --git a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendMPPDiagnosticsWithLightTreeTestGenerated.java b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendMPPDiagnosticsWithLightTreeTestGenerated.java
index 1d3be650..688678d 100644
--- a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendMPPDiagnosticsWithLightTreeTestGenerated.java
+++ b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendMPPDiagnosticsWithLightTreeTestGenerated.java
@@ -476,6 +476,12 @@
}
@Test
+ @TestMetadata("valueClassWithPrivateConstructor.kt")
+ public void testValueClassWithPrivateConstructor() {
+ runTest("compiler/testData/diagnostics/tests/multiplatform/valueClassWithPrivateConstructor.kt");
+ }
+
+ @Test
@TestMetadata("varSetterVisibility.kt")
public void testVarSetterVisibility() {
runTest("compiler/testData/diagnostics/tests/multiplatform/varSetterVisibility.kt");
diff --git a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendMPPDiagnosticsWithPsiTestGenerated.java b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendMPPDiagnosticsWithPsiTestGenerated.java
index f1a2f7a..79e9a6b 100644
--- a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendMPPDiagnosticsWithPsiTestGenerated.java
+++ b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendMPPDiagnosticsWithPsiTestGenerated.java
@@ -476,6 +476,12 @@
}
@Test
+ @TestMetadata("valueClassWithPrivateConstructor.kt")
+ public void testValueClassWithPrivateConstructor() {
+ runTest("compiler/testData/diagnostics/tests/multiplatform/valueClassWithPrivateConstructor.kt");
+ }
+
+ @Test
@TestMetadata("varSetterVisibility.kt")
public void testVarSetterVisibility() {
runTest("compiler/testData/diagnostics/tests/multiplatform/varSetterVisibility.kt");
diff --git a/compiler/testData/diagnostics/tests/multiplatform/valueClassWithPrivateConstructor.kt b/compiler/testData/diagnostics/tests/multiplatform/valueClassWithPrivateConstructor.kt
new file mode 100644
index 0000000..7626d58e1e
--- /dev/null
+++ b/compiler/testData/diagnostics/tests/multiplatform/valueClassWithPrivateConstructor.kt
@@ -0,0 +1,15 @@
+// FIR_IDENTICAL
+// WITH_STDLIB
+
+// MODULE: m1-common
+// FILE: common.kt
+
+// Value classes can't be written without a constructor. That's why `private constructor` is allowed
+// Oh, private properties of value classes are allowed as well for the same reason. Have fun
+expect value class Value private constructor(private val x: Int)
+
+// MODULE: m2-jvm()()(m1-common)
+// FILE: jvm.kt
+
+@JvmInline
+actual value class Value public constructor(val x: Int)
diff --git a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/DiagnosticTestGenerated.java b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/DiagnosticTestGenerated.java
index 05d3b9a..576c24c 100644
--- a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/DiagnosticTestGenerated.java
+++ b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/DiagnosticTestGenerated.java
@@ -26449,6 +26449,12 @@
}
@Test
+ @TestMetadata("valueClassWithPrivateConstructor.kt")
+ public void testValueClassWithPrivateConstructor() {
+ runTest("compiler/testData/diagnostics/tests/multiplatform/valueClassWithPrivateConstructor.kt");
+ }
+
+ @Test
@TestMetadata("varSetterVisibility.kt")
public void testVarSetterVisibility() {
runTest("compiler/testData/diagnostics/tests/multiplatform/varSetterVisibility.kt");