Don't propagate reified markers for special enum functions

#KT-18254 Fixed
This commit is contained in:
Mikhael Bogdanov
2017-11-06 11:43:41 +01:00
parent 800cc63347
commit 416392bb74
12 changed files with 70 additions and 11 deletions
+17
View File
@@ -0,0 +1,17 @@
// FILE: 1.kt
// WITH_RUNTIME
package test
inline fun stub() {}
enum class Z {
OK
}
// FILE: 2.kt
// NO_CHECK_LAMBDA_INLINING
import test.*
fun box(): String {
return { enumValueOf<Z>("OK").name } ()
}
+2 -2
View File
@@ -2,8 +2,8 @@
// WITH_RUNTIME
package test
inline fun <reified T : Enum<T>> myValueOf(): String {
return enumValueOf<T>("OK").name
inline fun <reified X : Enum<X>> myValueOf(): String {
return enumValueOf<X>("OK").name
}
enum class Z {
@@ -2,8 +2,8 @@
// WITH_RUNTIME
package test
inline fun <reified T : Enum<T>> myValueOf(): String {
return myValueOf2<T>()
inline fun <reified Z : Enum<Z>> myValueOf(): String {
return myValueOf2<Z>()
}
inline fun <reified Y : Enum<Y>> myValueOf2(): String {