Language feature for new inline class mangling rules (since 1.4)

This commit is contained in:
Dmitry Petrov
2020-05-28 19:13:57 +03:00
parent 94509bdb4e
commit a270ee094c
26 changed files with 296 additions and 6 deletions
@@ -0,0 +1,16 @@
// !LANGUAGE: +InlineClasses -MangleClassMembersReturningInlineClasses
// FILE: 1.kt
package test
inline class S(val string: String)
inline fun foo() = S("OK")
// FILE: 2.kt
import test.*
fun box() : String =
foo().string
@@ -0,0 +1,16 @@
// !LANGUAGE: +InlineClasses -MangleClassMembersReturningInlineClasses
// FILE: 1.kt
package test
inline class S(val string: String)
inline val foo get() = S("OK")
// FILE: 2.kt
import test.*
fun box() : String = foo.string
@@ -0,0 +1,16 @@
// !LANGUAGE: +InlineClasses +MangleClassMembersReturningInlineClasses
// FILE: 1.kt
package test
inline class S(val string: String)
inline fun foo() = S("OK")
// FILE: 2.kt
import test.*
fun box() : String =
foo().string
@@ -0,0 +1,16 @@
// !LANGUAGE: +InlineClasses +MangleClassMembersReturningInlineClasses
// FILE: 1.kt
package test
inline class S(val string: String)
inline val foo get() = S("OK")
// FILE: 2.kt
import test.*
fun box() : String = foo.string