Work around change in JDK 11 based desugared library
Bug: 181629049
Change-Id: Ibe7fb927720bc3a9759cd401a1491672b3bd8502
diff --git a/src/main/java/com/android/tools/r8/ir/desugar/DesugaredLibraryRetargeter.java b/src/main/java/com/android/tools/r8/ir/desugar/DesugaredLibraryRetargeter.java
index 6036eb4..8a6624e 100644
--- a/src/main/java/com/android/tools/r8/ir/desugar/DesugaredLibraryRetargeter.java
+++ b/src/main/java/com/android/tools/r8/ir/desugar/DesugaredLibraryRetargeter.java
@@ -409,6 +409,21 @@
itemFactory.createMethod(
itemFactory.createType("Ljava/util/DesugarArrays;"), proto, name);
retargetLibraryMember.put(source, target);
+
+ // TODO(b/181629049): This is only a workaround rewriting invokes of
+ // j.u.TimeZone.getTimeZone taking a java.time.ZoneId.
+ // to j.u.DesugarArrays.deepEquals0.
+ name = itemFactory.createString("getTimeZone");
+ proto =
+ itemFactory.createProto(
+ itemFactory.createType("Ljava/util/TimeZone;"),
+ itemFactory.createType("Ljava/time/ZoneId;"));
+ source =
+ itemFactory.createMethod(itemFactory.createType("Ljava/util/TimeZone;"), proto, name);
+ target =
+ itemFactory.createMethod(
+ itemFactory.createType("Ljava/util/DesugarTimeZone;"), proto, name);
+ retargetLibraryMember.put(source, target);
}
}