JVM_IR KT-47120 treat outer name as case-insensitive for local classes

This commit is contained in:
Dmitry Petrov
2021-06-29 12:58:50 +03:00
parent 1130344fb1
commit 37b05cd9c2
7 changed files with 90 additions and 2 deletions
+17
View File
@@ -0,0 +1,17 @@
// TARGET_BACKEND: JVM
// WITH_RUNTIME
// FULL_JDK
import java.util.*
fun box(): String {
fun f() = {}
fun F() = {}
val class1 = f().javaClass.name
val class2 = F().javaClass.name
if (class1.uppercase(Locale.ENGLISH) != class2.uppercase(Locale.ENGLISH))
return "OK"
else
return "$class1 $class2"
}
+24
View File
@@ -0,0 +1,24 @@
// TARGET_BACKEND: JVM
// WITH_RUNTIME
// FULL_JDK
import java.util.*
fun box(): String {
fun f(): Any {
fun g() = object {}
return g()
}
fun F(): Any {
fun g() = object {}
return g()
}
val class1 = f().javaClass.name
val class2 = F().javaClass.name
if (class1.uppercase(Locale.ENGLISH) != class2.uppercase(Locale.ENGLISH))
return "OK"
else
return "$class1 $class2"
}