[JVM] Forbid non-JvmInline value classes again

This commit is contained in:
Evgeniy.Zhelenskiy
2021-12-25 04:44:00 +03:00
committed by Space
parent 7595f798e1
commit df1de3a7d3
19 changed files with 126 additions and 4798 deletions
@@ -32207,7 +32207,7 @@ public class DiagnosticTestGenerated extends AbstractDiagnosticTest {
@Test
@TestMetadata("recursiveMultiFieldValueClasses.kt")
public void testRecursiveMultiFieldValueClasses() throws Exception {
runTest("compiler/testData/diagnostics/tests/valueClasses/recursiveMultiFieldValueClasses.kt", TransformersFunctions.getRemoveOptionalJvmInlineAnnotation());
runTest("compiler/testData/diagnostics/tests/valueClasses/recursiveMultiFieldValueClasses.kt", TransformersFunctions.getReplaceOptionalJvmInlineAnnotationWithUniversal());
}
@Test
@@ -32267,7 +32267,7 @@ public class DiagnosticTestGenerated extends AbstractDiagnosticTest {
@Test
@TestMetadata("valueClassWithForbiddenUnderlyingTypeMultiField.kt")
public void testValueClassWithForbiddenUnderlyingTypeMultiField() throws Exception {
runTest("compiler/testData/diagnostics/tests/valueClasses/valueClassWithForbiddenUnderlyingTypeMultiField.kt", TransformersFunctions.getRemoveOptionalJvmInlineAnnotation());
runTest("compiler/testData/diagnostics/tests/valueClasses/valueClassWithForbiddenUnderlyingTypeMultiField.kt", TransformersFunctions.getReplaceOptionalJvmInlineAnnotationWithUniversal());
}
@Test
@@ -11,6 +11,9 @@ object TransformersFunctions {
@JvmStatic
val replaceOptionalJvmInlineAnnotationWithReal = ReplacingSourceTransformer("OPTIONAL_JVM_INLINE_ANNOTATION", "@JvmInline")
@JvmStatic
val replaceOptionalJvmInlineAnnotationWithUniversal = ReplacingSourceTransformer("OPTIONAL_JVM_INLINE_ANNOTATION", "@Suppress(\"OPTIONAL_DECLARATION_USAGE_IN_NON_COMMON_SOURCE\") @kotlin.jvm.JvmInline")
@JvmStatic
val removeOptionalJvmInlineAnnotation = ReplacingSourceTransformer("OPTIONAL_JVM_INLINE_ANNOTATION", "")