Fix == for inline classes with boxes

TODO generalize code generating object vs primitive equality

 #KT-25914 Fixed
 #KT-25981 Fixed
 #KT-25983 Fixed
This commit is contained in:
Dmitry Petrov
2018-08-09 18:30:09 +03:00
parent cd12772bc5
commit 4f6aa50417
10 changed files with 225 additions and 29 deletions
@@ -11445,6 +11445,11 @@ public class BlackBoxCodegenTestGenerated extends AbstractBlackBoxCodegenTest {
runTest("compiler/testData/codegen/box/inlineClasses/inlineClassAsLastExpressionInInLambda.kt");
}
@TestMetadata("inlineClassEqualityShouldUseTotalOrderForFloatingPointData.kt")
public void testInlineClassEqualityShouldUseTotalOrderForFloatingPointData() throws Exception {
runTest("compiler/testData/codegen/box/inlineClasses/inlineClassEqualityShouldUseTotalOrderForFloatingPointData.kt");
}
@TestMetadata("inlineClassImplementsCollection.kt")
public void testInlineClassImplementsCollection() throws Exception {
runTest("compiler/testData/codegen/box/inlineClasses/inlineClassImplementsCollection.kt");
@@ -11455,6 +11460,11 @@ public class BlackBoxCodegenTestGenerated extends AbstractBlackBoxCodegenTest {
runTest("compiler/testData/codegen/box/inlineClasses/inlineClassValuesInsideStrings.kt");
}
@TestMetadata("inlineClassWithCustomEquals.kt")
public void testInlineClassWithCustomEquals() throws Exception {
runTest("compiler/testData/codegen/box/inlineClasses/inlineClassWithCustomEquals.kt");
}
@TestMetadata("inlineClassesCheckCast.kt")
public void testInlineClassesCheckCast() throws Exception {
runTest("compiler/testData/codegen/box/inlineClasses/inlineClassesCheckCast.kt");
@@ -11490,6 +11500,11 @@ public class BlackBoxCodegenTestGenerated extends AbstractBlackBoxCodegenTest {
runTest("compiler/testData/codegen/box/inlineClasses/noAssertionsOnInlineClassBasedOnNullableType.kt");
}
@TestMetadata("nullableEqeqNonNull.kt")
public void testNullableEqeqNonNull() throws Exception {
runTest("compiler/testData/codegen/box/inlineClasses/nullableEqeqNonNull.kt");
}
@TestMetadata("passInlineClassAsVararg.kt")
public void testPassInlineClassAsVararg() throws Exception {
runTest("compiler/testData/codegen/box/inlineClasses/passInlineClassAsVararg.kt");