Generate method calls for inline classes through IC, not IC$Erased

IC extends IC$Erased, so it should be fine.
This commit is contained in:
Dmitry Petrov
2018-08-30 12:29:41 +03:00
parent 3080b65f7d
commit 80a67477db
10 changed files with 100 additions and 8 deletions
@@ -2073,6 +2073,11 @@ public class BytecodeTextTestGenerated extends AbstractBytecodeTextTest {
runTest("compiler/testData/codegen/bytecodeText/inlineClasses/generationOfAccessorToUnderlyingValue.kt");
}
@TestMetadata("hashCodeIsCalledByInlineClass.kt")
public void testHashCodeIsCalledByInlineClass() throws Exception {
runTest("compiler/testData/codegen/bytecodeText/inlineClasses/hashCodeIsCalledByInlineClass.kt");
}
@TestMetadata("inlineClassBoxingOnAssignment.kt")
public void testInlineClassBoxingOnAssignment() throws Exception {
runTest("compiler/testData/codegen/bytecodeText/inlineClasses/inlineClassBoxingOnAssignment.kt");
@@ -2123,6 +2128,16 @@ public class BytecodeTextTestGenerated extends AbstractBytecodeTextTest {
runTest("compiler/testData/codegen/bytecodeText/inlineClasses/noBoxingOperationsOnNonTrivialSpread.kt");
}
@TestMetadata("nonOverridingMethodsAreCalledByInlineClass.kt")
public void testNonOverridingMethodsAreCalledByInlineClass() throws Exception {
runTest("compiler/testData/codegen/bytecodeText/inlineClasses/nonOverridingMethodsAreCalledByInlineClass.kt");
}
@TestMetadata("overridingMethodsAreCalledByInlineClass.kt")
public void testOverridingMethodsAreCalledByInlineClass() throws Exception {
runTest("compiler/testData/codegen/bytecodeText/inlineClasses/overridingMethodsAreCalledByInlineClass.kt");
}
@TestMetadata("passInlineClassesWithSpreadOperatorToVarargs.kt")
public void testPassInlineClassesWithSpreadOperatorToVarargs() throws Exception {
runTest("compiler/testData/codegen/bytecodeText/inlineClasses/passInlineClassesWithSpreadOperatorToVarargs.kt");
@@ -2143,6 +2158,11 @@ public class BytecodeTextTestGenerated extends AbstractBytecodeTextTest {
runTest("compiler/testData/codegen/bytecodeText/inlineClasses/synthesizedBoxMethodIsNotMangled.kt");
}
@TestMetadata("toStringIsCalledByInlineClass.kt")
public void testToStringIsCalledByInlineClass() throws Exception {
runTest("compiler/testData/codegen/bytecodeText/inlineClasses/toStringIsCalledByInlineClass.kt");
}
@TestMetadata("uIntArrayIteratorWithoutBoxing.kt")
public void testUIntArrayIteratorWithoutBoxing() throws Exception {
runTest("compiler/testData/codegen/bytecodeText/inlineClasses/uIntArrayIteratorWithoutBoxing.kt");