JVM_IR: cast argument of enumValueOf to String in bytecode

Generic functions and implicit casts may return a supertype instead.

 #KT-45865 Fixed
This commit is contained in:
pyos
2021-04-12 17:51:46 +02:00
committed by Alexander Udalov
parent afaf3b5e28
commit cc7187e49b
10 changed files with 52 additions and 2 deletions
@@ -10347,6 +10347,11 @@ public class IrJsCodegenBoxES6TestGenerated extends AbstractIrJsCodegenBoxES6Tes
runTest("compiler/testData/codegen/box/enum/enumShort.kt");
}
@TestMetadata("enumValueOf.kt")
public void testEnumValueOf() throws Exception {
runTest("compiler/testData/codegen/box/enum/enumValueOf.kt");
}
@TestMetadata("enumWithLambdaParameter.kt")
public void testEnumWithLambdaParameter() throws Exception {
runTest("compiler/testData/codegen/box/enum/enumWithLambdaParameter.kt");
@@ -9768,6 +9768,11 @@ public class IrJsCodegenBoxTestGenerated extends AbstractIrJsCodegenBoxTest {
runTest("compiler/testData/codegen/box/enum/enumShort.kt");
}
@TestMetadata("enumValueOf.kt")
public void testEnumValueOf() throws Exception {
runTest("compiler/testData/codegen/box/enum/enumValueOf.kt");
}
@TestMetadata("enumWithLambdaParameter.kt")
public void testEnumWithLambdaParameter() throws Exception {
runTest("compiler/testData/codegen/box/enum/enumWithLambdaParameter.kt");
@@ -9768,6 +9768,11 @@ public class JsCodegenBoxTestGenerated extends AbstractJsCodegenBoxTest {
runTest("compiler/testData/codegen/box/enum/enumShort.kt");
}
@TestMetadata("enumValueOf.kt")
public void testEnumValueOf() throws Exception {
runTest("compiler/testData/codegen/box/enum/enumValueOf.kt");
}
@TestMetadata("enumWithLambdaParameter.kt")
public void testEnumWithLambdaParameter() throws Exception {
runTest("compiler/testData/codegen/box/enum/enumWithLambdaParameter.kt");
@@ -4727,6 +4727,11 @@ public class IrCodegenBoxWasmTestGenerated extends AbstractIrCodegenBoxWasmTest
runTest("compiler/testData/codegen/box/enum/enumShort.kt");
}
@TestMetadata("enumValueOf.kt")
public void testEnumValueOf() throws Exception {
runTest("compiler/testData/codegen/box/enum/enumValueOf.kt");
}
@TestMetadata("enumWithLambdaParameter.kt")
public void testEnumWithLambdaParameter() throws Exception {
runTest("compiler/testData/codegen/box/enum/enumWithLambdaParameter.kt");