Add kotlin 1.5.0 compiler to tests
Contents of README.google:
Name: Kotlin
URL: https://github.com/JetBrains/kotlin/
Version: 1.5.0
Revision: NA
License: Apache License Version 2.0
Bug: 190797205
Change-Id: I17a6e46ab78b49040d7f9efab730b3e4a01bdd67
diff --git a/.gitignore b/.gitignore
index d78f4a4..f16c1ba 100644
--- a/.gitignore
+++ b/.gitignore
@@ -112,8 +112,8 @@
third_party/kotlin/kotlin-compiler-1.3.72
third_party/kotlin/kotlin-compiler-1.4.20.tar.gz
third_party/kotlin/kotlin-compiler-1.4.20
-third_party/kotlin/kotlin-compiler-1.5.0-M2.tar.gz
-third_party/kotlin/kotlin-compiler-1.5.0-M2
+third_party/kotlin/kotlin-compiler-1.5.0.tar.gz
+third_party/kotlin/kotlin-compiler-1.5.0
third_party/kotlinx-coroutines-1.3.6.tar.gz
third_party/kotlinx-coroutines-1.3.6
third_party/nest/*
diff --git a/build.gradle b/build.gradle
index 7a28b47..58074cd 100644
--- a/build.gradle
+++ b/build.gradle
@@ -331,7 +331,7 @@
"kotlin/kotlin-compiler-1.3.41",
"kotlin/kotlin-compiler-1.3.72",
"kotlin/kotlin-compiler-1.4.20",
- "kotlin/kotlin-compiler-1.5.0-M2",
+ "kotlin/kotlin-compiler-1.5.0",
"kotlinx-coroutines-1.3.6",
"openjdk/openjdk-rt-1.8",
"openjdk/desugar_jdk_libs",
diff --git a/src/test/java/com/android/tools/r8/KotlinCompilerTool.java b/src/test/java/com/android/tools/r8/KotlinCompilerTool.java
index ec2b927..468c1e9 100644
--- a/src/test/java/com/android/tools/r8/KotlinCompilerTool.java
+++ b/src/test/java/com/android/tools/r8/KotlinCompilerTool.java
@@ -31,7 +31,7 @@
public enum KotlinCompilerVersion {
KOTLINC_1_3_72("kotlin-compiler-1.3.72"),
KOTLINC_1_4_20("kotlin-compiler-1.4.20"),
- KOTLINC_1_5_0_M2("kotlin-compiler-1.5.0-M2");
+ KOTLINC_1_5_0("kotlin-compiler-1.5.0");
private final String folder;
diff --git a/src/test/java/com/android/tools/r8/KotlinTestParameters.java b/src/test/java/com/android/tools/r8/KotlinTestParameters.java
index 57658e1..7cfcc07 100644
--- a/src/test/java/com/android/tools/r8/KotlinTestParameters.java
+++ b/src/test/java/com/android/tools/r8/KotlinTestParameters.java
@@ -93,7 +93,7 @@
// KotlinTargetVersion java 6 is deprecated from kotlinc 1.5 and forward, no need to run
// tests on that target.
if (targetVersion != KotlinTargetVersion.JAVA_6
- || kotlinc.isNot(KotlinCompilerVersion.KOTLINC_1_5_0_M2)) {
+ || kotlinc.isNot(KotlinCompilerVersion.KOTLINC_1_5_0)) {
testParameters.add(new KotlinTestParameters(kotlinc, targetVersion, index++));
}
}
diff --git a/src/test/java/com/android/tools/r8/ToolHelper.java b/src/test/java/com/android/tools/r8/ToolHelper.java
index e4ed7b0..0a7edb3 100644
--- a/src/test/java/com/android/tools/r8/ToolHelper.java
+++ b/src/test/java/com/android/tools/r8/ToolHelper.java
@@ -5,7 +5,7 @@
import static com.android.tools.r8.KotlinCompilerTool.KotlinCompilerVersion.KOTLINC_1_3_72;
import static com.android.tools.r8.KotlinCompilerTool.KotlinCompilerVersion.KOTLINC_1_4_20;
-import static com.android.tools.r8.KotlinCompilerTool.KotlinCompilerVersion.KOTLINC_1_5_0_M2;
+import static com.android.tools.r8.KotlinCompilerTool.KotlinCompilerVersion.KOTLINC_1_5_0;
import static com.android.tools.r8.utils.FileUtils.CLASS_EXTENSION;
import static com.android.tools.r8.utils.FileUtils.JAVA_EXTENSION;
import static com.android.tools.r8.utils.FileUtils.isDexFile;
@@ -2169,12 +2169,12 @@
return new KotlinCompiler(KOTLINC_1_4_20);
}
- public static KotlinCompiler getKotlinC_1_5_0_m2() {
- return new KotlinCompiler(KOTLINC_1_5_0_M2);
+ public static KotlinCompiler getKotlinC_1_5_0() {
+ return new KotlinCompiler(KOTLINC_1_5_0);
}
public static KotlinCompiler[] getKotlinCompilers() {
- return new KotlinCompiler[] {getKotlinC_1_3_72(), getKotlinC_1_4_20(), getKotlinC_1_5_0_m2()};
+ return new KotlinCompiler[] {getKotlinC_1_3_72(), getKotlinC_1_4_20(), getKotlinC_1_5_0()};
}
public static void disassemble(AndroidApp app, PrintStream ps) throws IOException {
diff --git a/src/test/java/com/android/tools/r8/kotlin/KotlinClassInlinerTest.java b/src/test/java/com/android/tools/r8/kotlin/KotlinClassInlinerTest.java
index c8af414..e418ced 100644
--- a/src/test/java/com/android/tools/r8/kotlin/KotlinClassInlinerTest.java
+++ b/src/test/java/com/android/tools/r8/kotlin/KotlinClassInlinerTest.java
@@ -5,7 +5,7 @@
package com.android.tools.r8.kotlin;
import static com.android.tools.r8.KotlinCompilerTool.KotlinCompilerVersion.KOTLINC_1_3_72;
-import static com.android.tools.r8.KotlinCompilerTool.KotlinCompilerVersion.KOTLINC_1_5_0_M2;
+import static com.android.tools.r8.KotlinCompilerTool.KotlinCompilerVersion.KOTLINC_1_5_0;
import static com.android.tools.r8.utils.codeinspector.Matchers.isPresent;
import static com.android.tools.r8.utils.codeinspector.Matchers.notIf;
import static org.hamcrest.MatcherAssert.assertThat;
@@ -62,7 +62,7 @@
@Test
public void testJStyleLambdas() throws Exception {
// TODO(b/185497606): Unable to class inline j style lambdas.
- assumeTrue(kotlinc.isNot(KOTLINC_1_5_0_M2));
+ assumeTrue(kotlinc.isNot(KOTLINC_1_5_0));
String mainClassName = "class_inliner_lambda_j_style.MainKt";
runTest(
"class_inliner_lambda_j_style",
diff --git a/src/test/java/com/android/tools/r8/kotlin/R8KotlinAccessorTest.java b/src/test/java/com/android/tools/r8/kotlin/R8KotlinAccessorTest.java
index 2b2eed4..3d872c4 100644
--- a/src/test/java/com/android/tools/r8/kotlin/R8KotlinAccessorTest.java
+++ b/src/test/java/com/android/tools/r8/kotlin/R8KotlinAccessorTest.java
@@ -4,7 +4,7 @@
package com.android.tools.r8.kotlin;
-import static com.android.tools.r8.KotlinCompilerTool.KotlinCompilerVersion.KOTLINC_1_5_0_M2;
+import static com.android.tools.r8.KotlinCompilerTool.KotlinCompilerVersion.KOTLINC_1_5_0;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
@@ -278,7 +278,7 @@
assertTrue(fieldSubject.getField().accessFlags.isPublic());
// kotlinc 1.5 do not generate accessors for public late-init properties.
- if (kotlinc.isNot(KOTLINC_1_5_0_M2)) {
+ if (kotlinc.isNot(KOTLINC_1_5_0)) {
checkMethodIsRemoved(outerClass, getterAccessor);
checkMethodIsRemoved(outerClass, setterAccessor);
}
@@ -311,7 +311,7 @@
assertTrue(fieldSubject.getField().accessFlags.isPublic());
// kotlinc 1.5 do not generate accessors for public late-init properties.
- if (kotlinc.isNot(KOTLINC_1_5_0_M2)) {
+ if (kotlinc.isNot(KOTLINC_1_5_0)) {
checkMethodIsRemoved(outerClass, getterAccessor);
checkMethodIsRemoved(outerClass, setterAccessor);
}
@@ -376,7 +376,7 @@
@Test
public void testAccessorForInnerClassIsRemovedWhenNotUsed() throws Exception {
// TODO(b/185493636): Kotlinc 1.5 generated property accessors are not removed.
- assumeTrue(kotlinc.isNot(KOTLINC_1_5_0_M2));
+ assumeTrue(kotlinc.isNot(KOTLINC_1_5_0));
String mainClass =
addMainToClasspath(
"accessors.PropertyAccessorForInnerClassKt", "noUseOfPropertyAccessorFromInnerClass");
diff --git a/src/test/java/com/android/tools/r8/kotlin/R8KotlinDataClassTest.java b/src/test/java/com/android/tools/r8/kotlin/R8KotlinDataClassTest.java
index ec3722c..aebbbb2 100644
--- a/src/test/java/com/android/tools/r8/kotlin/R8KotlinDataClassTest.java
+++ b/src/test/java/com/android/tools/r8/kotlin/R8KotlinDataClassTest.java
@@ -80,7 +80,7 @@
inspector -> {
if (allowAccessModification
&& kotlinParameters.is(
- KotlinCompilerVersion.KOTLINC_1_5_0_M2, KotlinTargetVersion.JAVA_8)) {
+ KotlinCompilerVersion.KOTLINC_1_5_0, KotlinTargetVersion.JAVA_8)) {
checkClassIsRemoved(inspector, TEST_DATA_CLASS.getClassName());
} else {
ClassSubject dataClass =
@@ -131,7 +131,7 @@
inspector -> {
if (allowAccessModification
&& kotlinParameters.is(
- KotlinCompilerVersion.KOTLINC_1_5_0_M2, KotlinTargetVersion.JAVA_8)) {
+ KotlinCompilerVersion.KOTLINC_1_5_0, KotlinTargetVersion.JAVA_8)) {
checkClassIsRemoved(inspector, TEST_DATA_CLASS.getClassName());
} else {
ClassSubject dataClass =
diff --git a/src/test/java/com/android/tools/r8/kotlin/lambda/KotlinLambdaMergingTrivialJavaStyleTest.java b/src/test/java/com/android/tools/r8/kotlin/lambda/KotlinLambdaMergingTrivialJavaStyleTest.java
index 00d2418..7b02bdb 100644
--- a/src/test/java/com/android/tools/r8/kotlin/lambda/KotlinLambdaMergingTrivialJavaStyleTest.java
+++ b/src/test/java/com/android/tools/r8/kotlin/lambda/KotlinLambdaMergingTrivialJavaStyleTest.java
@@ -4,7 +4,7 @@
package com.android.tools.r8.kotlin.lambda;
-import static com.android.tools.r8.KotlinCompilerTool.KotlinCompilerVersion.KOTLINC_1_5_0_M2;
+import static com.android.tools.r8.KotlinCompilerTool.KotlinCompilerVersion.KOTLINC_1_5_0;
import static com.android.tools.r8.ToolHelper.getKotlinAnnotationJar;
import static com.android.tools.r8.utils.PredicateUtils.not;
import static junit.framework.TestCase.assertEquals;
@@ -75,7 +75,7 @@
@Test
public void testR8() throws Exception {
// TODO(b/185497606): Unable to merge jstyle lambda.
- assumeTrue(kotlinc.isNot(KOTLINC_1_5_0_M2));
+ assumeTrue(kotlinc.isNot(KOTLINC_1_5_0));
testForR8(parameters.getBackend())
.addProgramFiles(getProgramFiles())
.addKeepMainRule(getMainClassName())
diff --git a/src/test/java/com/android/tools/r8/kotlin/metadata/MetadataRewriteInPropertyTest.java b/src/test/java/com/android/tools/r8/kotlin/metadata/MetadataRewriteInPropertyTest.java
index deb4e5e..6bb1804 100644
--- a/src/test/java/com/android/tools/r8/kotlin/metadata/MetadataRewriteInPropertyTest.java
+++ b/src/test/java/com/android/tools/r8/kotlin/metadata/MetadataRewriteInPropertyTest.java
@@ -3,7 +3,7 @@
// BSD-style license that can be found in the LICENSE file.
package com.android.tools.r8.kotlin.metadata;
-import static com.android.tools.r8.KotlinCompilerTool.KotlinCompilerVersion.KOTLINC_1_5_0_M2;
+import static com.android.tools.r8.KotlinCompilerTool.KotlinCompilerVersion.KOTLINC_1_5_0;
import static com.android.tools.r8.ToolHelper.getKotlinAnnotationJar;
import static com.android.tools.r8.ToolHelper.getKotlinStdlibJar;
import static com.android.tools.r8.utils.codeinspector.Matchers.isExtensionProperty;
@@ -140,7 +140,7 @@
KmPropertySubject age = kmClass.kmPropertyWithUniqueName("age");
assertThat(age, isPresent());
assertThat(age, not(isExtensionProperty()));
- assertEquals(kotlinc.is(KOTLINC_1_5_0_M2) ? "b:I" : "a:I", age.fieldSignature().asString());
+ assertEquals(kotlinc.is(KOTLINC_1_5_0) ? "b:I" : "a:I", age.fieldSignature().asString());
assertEquals("getAge()I", age.getterSignature().asString());
assertEquals("setAge(I)V", age.setterSignature().asString());
}
diff --git a/src/test/java/com/android/tools/r8/kotlin/metadata/MetadataRewriteInSealedClassTest.java b/src/test/java/com/android/tools/r8/kotlin/metadata/MetadataRewriteInSealedClassTest.java
index 4f5f64f..d3380e6 100644
--- a/src/test/java/com/android/tools/r8/kotlin/metadata/MetadataRewriteInSealedClassTest.java
+++ b/src/test/java/com/android/tools/r8/kotlin/metadata/MetadataRewriteInSealedClassTest.java
@@ -164,7 +164,7 @@
.compileRaw();
assertNotEquals(0, kotlinTestCompileResult.exitCode);
- if (kotlinc.is(KotlinCompilerVersion.KOTLINC_1_5_0_M2)) {
+ if (kotlinc.is(KotlinCompilerVersion.KOTLINC_1_5_0)) {
assertThat(
kotlinTestCompileResult.stderr,
containsString(
diff --git a/src/test/java/com/android/tools/r8/kotlin/metadata/MetadataRewritePassThroughTest.java b/src/test/java/com/android/tools/r8/kotlin/metadata/MetadataRewritePassThroughTest.java
index 44092e7..263b087 100644
--- a/src/test/java/com/android/tools/r8/kotlin/metadata/MetadataRewritePassThroughTest.java
+++ b/src/test/java/com/android/tools/r8/kotlin/metadata/MetadataRewritePassThroughTest.java
@@ -50,8 +50,8 @@
return 597;
} else if (kotlinParameters.getCompiler().is(KotlinCompilerVersion.KOTLINC_1_4_20)) {
return 685;
- } else if (kotlinParameters.getCompiler().is(KotlinCompilerVersion.KOTLINC_1_5_0_M2)) {
- return 694;
+ } else if (kotlinParameters.getCompiler().is(KotlinCompilerVersion.KOTLINC_1_5_0)) {
+ return 696;
} else {
throw new Unreachable("Should not compile in this configuration");
}
@@ -62,8 +62,8 @@
return 327;
} else if (kotlinParameters.getCompiler().is(KotlinCompilerVersion.KOTLINC_1_4_20)) {
return 413;
- } else if (kotlinParameters.getCompiler().is(KotlinCompilerVersion.KOTLINC_1_5_0_M2)) {
- return 417;
+ } else if (kotlinParameters.getCompiler().is(KotlinCompilerVersion.KOTLINC_1_5_0)) {
+ return 419;
} else {
throw new Unreachable("Should not compile in this configuration");
}
diff --git a/src/test/java/com/android/tools/r8/naming/EnumMinificationKotlinTest.java b/src/test/java/com/android/tools/r8/naming/EnumMinificationKotlinTest.java
index e25fd15..80d865e 100644
--- a/src/test/java/com/android/tools/r8/naming/EnumMinificationKotlinTest.java
+++ b/src/test/java/com/android/tools/r8/naming/EnumMinificationKotlinTest.java
@@ -74,6 +74,6 @@
// TODO(b/179994975): Kotlin enum changed in 1.5.
assertThat(
enumClass.clinit(),
- kotlinc.is(KotlinCompilerVersion.KOTLINC_1_5_0_M2) ? isPresent() : isAbsent());
+ kotlinc.is(KotlinCompilerVersion.KOTLINC_1_5_0) ? isPresent() : isAbsent());
}
}
diff --git a/src/test/java/com/android/tools/r8/regress/b191296688/Regress191296688.java b/src/test/java/com/android/tools/r8/regress/b191296688/Regress191296688.java
index dc7458c..e5ed600 100644
--- a/src/test/java/com/android/tools/r8/regress/b191296688/Regress191296688.java
+++ b/src/test/java/com/android/tools/r8/regress/b191296688/Regress191296688.java
@@ -42,7 +42,7 @@
getTestParameters().withDexRuntimes().withAllApiLevels().build(),
getKotlinTestParameters()
.withTargetVersion(KotlinTargetVersion.JAVA_8)
- .withCompiler(ToolHelper.getKotlinC_1_5_0_m2())
+ .withCompiler(ToolHelper.getKotlinC_1_5_0())
.build());
}
diff --git a/third_party/kotlin/kotlin-compiler-1.5.0.tar.gz.sha1 b/third_party/kotlin/kotlin-compiler-1.5.0.tar.gz.sha1
new file mode 100644
index 0000000..168df33
--- /dev/null
+++ b/third_party/kotlin/kotlin-compiler-1.5.0.tar.gz.sha1
@@ -0,0 +1 @@
+f7331df1f60104865f8308af89384ff2dee29427
\ No newline at end of file