Value classes: Report lacking @JvmInline only on JVM backend

Report when @JvmInline is applied on non-value class.
This commit is contained in:
Ilmir Usmanov
2020-11-19 02:57:55 +01:00
parent 92f1681de0
commit ca3e7cf1a7
27 changed files with 215 additions and 54 deletions
@@ -1,4 +1,5 @@
// !LANGUAGE: +InlineClasses
// NO_CHECK_SOURCE_VS_BINARY
package test
annotation class Ann
@@ -24,7 +24,7 @@ public final class Test {
public final fun <get-z>(): test.Z
}
public final inline class Z {
public final value class Z {
/*primary*/ public constructor Z(/*0*/ x: kotlin.Int)
public final val x: kotlin.Int
public final fun <get-x>(): kotlin.Int
@@ -1,4 +1,5 @@
// !LANGUAGE: +InlineClasses
// NO_CHECK_SOURCE_VS_BINARY
@file:Suppress("NON_PUBLIC_PRIMARY_CONSTRUCTOR_OF_INLINE_CLASS")
package test
@@ -1,6 +1,6 @@
package test
public final inline class Z {
public final value class Z {
/*primary*/ internal constructor Z(/*0*/ kotlin.Int)
public final val value: kotlin.Int
public final fun <get-value>(): kotlin.Int
@@ -1,6 +1,6 @@
package test
public final inline class Z {
public final value class Z {
/*primary*/ @kotlin.PublishedApi internal constructor Z(/*0*/ value: kotlin.Int)
public final val value: kotlin.Int
public final fun <get-value>(): kotlin.Int